我曾经编写过猪老三的世比赛应用机械进修对股价和涨跌进行猜测的幻想示例:
在猪老三的世比赛实现了:机械进修.fit(x, y) = (股价猜测,涨跌猜测) =发家
本系列教程中讲到的ump裁判体系是abupy中经由过程机械进修技巧对回测结不雅进行进修,反向指导决定计划新的交易是否拦截的实际应用,本节讲解机械进修在量化范畴很有感化的另一个偏向:阀值的估计,因为无论是编写选股策略,择时策略照样任何涉及决定计划的代码模型中都离不开阀值,比如最常用的止盈止损策略,在代码的编写中就必定会涉及阀值,比如之前的┞仿节一向应用的abupy中内置止盈止损策略AbuFactorCloseAtrNStop。
之所以必定会涉及阀值切实其实定是因为就像方才说的类似你求铰一?方程组,如不雅所有的参数都是未知数,那么你怎么解出你须要的谜底,所以必定要把一些变量变成常数值,然后经由过程这些常数值来肯定更多的变量,最终解出你所关怀的解。
对于阀值切实其实定传统的做法是根据经验来设定,实际上所谓的经验是个别对问题的统计模型, 在机械进修技巧的赞助下,可以实现更客不雅,周全,适应范围更广的阀值设定。
不论是个别经验对阀值进行常量定估照样经由过程机械进修技巧经由过程数据模型对阀值进行定估,都达不到绝对精确猜测结不雅的目标,量化交易的概率优势并不具有绝对的优势,即达不到猜测的程度,量化交易中大年夜多策略是基于对汗青规律的总结,在规律的基本上发明概率优势,它的最大年夜理论根据是人道的类似性以及人道很难改变的事实,如不雅每一个刹时的股票价格都是全部交易者对价值所杀青的一种刹时共鸣,那么汗青的规律在往后的交易中同样具有指导意义。
按照膳绫擎解方程的说法就是,定估的常量只要能知足大年夜多半时刻解出合理的解,甚至很多时刻定估的常量只要能知足有时刻能解出合理的解就可以,对于有时刻能解出合理的情况,可以在上层经由过程非均衡技巧对决定计划进行二次逻辑过滤,我反复说起过的非均衡技巧思惟是量化中很很重要的一种设计思路,因为我们量化的目标结不雅就长短均衡,我们想要赢的钱比输的多。
1. 比特币特点的提取
- from abupy import abu, ml, nd, tl, pd_resample, AbuML, AbuMLPd, AbuMetricsBase
- from abupy import ABuSymbolPd, ABuScalerUtil, get_price, ABuMarketDrawing, ABuKLUtil
- # btc是比特币symbol代号
- btc = ABuSymbolPd.make_kl_df('btc', start='2013-09-01', end='2017-07-26')
之前在比特币, 莱特币的回测那节应用ABuKLUtil.date_week_wave对走势的日震动做过统计如下:
如上所示查准率100%精确,但召回率评分异常低,即比特币在很多有大年夜行情的情况下为了保守,放弃了日交易,只在把握大年夜的时刻行动:
- ABuKLUtil.date_week_wave(btc)
- date_week
- 周一 5.0108
- 周二 5.5610
- 周三 5.4437
- 周四 5.7275
- 周五 5.3008
- 周六 4.7875
- 周日 4.6528
- Name: wave, dtype: float64
下面经由过程比较特币的短线交易决定计划为例,示例上述论点以及abupy中机械进修模块的应用,以及数据获取:
大年夜膳绫擎可以看出大年夜概0.055的日震动幅度可以成做大年夜波动的交易比较特币来说,下面对数据添加新列big_wave,可以看到结不雅大年夜波动的┞芳总交易日的1/3:
- btc['big_wave'] = (btc.high - btc.low) / btc.pre_close > 0.055
- btc['big_wave'] = btc['big_wave'].astype(int)
- btc['big_wave'].value_counts()
- 0 1005
推荐阅读
瞬息万变的经济情况、难以捉摸的零售业发卖情况、日益冷僻典大年夜型卖场–这一切都给本土零售业带来了重重艰苦。然则,我们也在黑阴郁看到了一线曙光。进入数字时代,技巧和数据的有>>>详细阅读
本文标题:关于机器学习与比特币的示例
地址:http://www.17bianji.com/lsqh/37053.html
1/2 1