a股量化交易接口策略——阿隆指标
1995年,图莎尔·钱德(Tushar Chande)发明了阿隆指标(Aroon),目前还是一个比较冷门的指标。
它通过计算自价格达到近期最高值和最低值以来所经过的期间数,可以帮助预测价格趋势到区域,或趋势区域到趋势的变化。
该指标由三部分组成:
其中:N=确定的时间段,HH=在此期间出现最高价后的天数,LL=在此期间出现最低价后的天数。
1.阿隆向上(Aroon-Up): [(N – HH)/ N]×100% ] ;
2.阿隆向下(Aroon-Down): [(N – LL)/ N]×100% ] ;
3.阿隆震荡线(Aroon Oscillator):阿隆Up – 阿隆Down 。
观察三种状态来分析Aroon指标:
1.Up线:达到100时,表示市场处于多头强势,跌破50表示向上的趋势正在失去动力,达到0时,表示多头处于极弱势;
Down线:达到100时,市场正处于空头强势,跌破50时表示向下的趋势正在失去动力,达到0时,表示空头处于极弱势;
两条线如果同处于底部,股票则处于盘整阶段,无趋势。
2.两条线平行运动时,表明市场原有趋势仍在继续,直到由极值水平或交叉穿行而改变市场方向为止。
3.当下行线上穿上行线时,表明原有趋势逐渐减弱,预计趋势将开始反转,反之亦然。
阿隆指标可以说是一个跟踪趋势的指标,如果把它用来择时会有什么效果呢?
def aroonIndex(account,timeLength=20):
#构建指数阿隆指标
indexSeries = pd.Series(account.get_symbol_history(‘benchmark’, timeLength)[‘closeIndex’])
indexAronUp = (nlargest(1,range(len(indexSeries)),key=indexSeries.get)[0]+1)*100/timeLength
indexAronDown = (nsmallest(1,range(len(indexSeries)),key=indexSeries.get)[0]+1)*100/timeLength
indexOsc = indexAronUp – indexAronDown
return indexOsc
当indexOsc 大于 0时,可以考虑开仓
start = ‘2009-08-01’ # 回测起始时间
end = ‘2015-08-31’ # 回测结束时间
benchmark = ‘HS300’ # 策略参考标准
universe = set_universe(‘HS300’) # 证券池,支持股票和基金
capital_base = 100000 # 起始资金
freq = ‘d’ # 策略类型,’d’表示日间策略使用日线回测,’m’表示日内策略使用分钟线回测
refresh_rate = 10 # 调仓频率,表示执行handle_data的时间间隔,若freq = ‘d’时间间隔的单位为交易日,若freq = ‘m’时间间隔为分钟
def initialize(account): # 初始化虚拟账户状态
pass
def handle_data(account): # 每个交易日的买入卖出指令
eq_AroonUp = aroonUp(account,20)
eq_AroonDown = aroonDown(account,20)
index_osc = aroonIndex(account,20)
buyList = []
for stk in account.valid_secpos:
order_to(stk, 0)
if index_osc > 0:
for stk in account.universe:
if eq_AroonUp[stk] – eq_AroonDown[stk] > 50:
buyList.append(stk)
for stk in buyList[:]:
if stk not in account.universe or account.referencePrice[stk] == 0 or np.isnan(account.referencePrice[stk]):
buyList.remove(stk)
for stk in buyList:
order(stk, account.referencePortfolioValue/account.referencePrice[stk]/len(buyList))
如果让indexOsc > 50呢:
start = ‘2009-08-01’ # 回测起始时间
end = ‘2015-08-31’ # 回测结束时间
benchmark = ‘HS300’ # 策略参考标准
universe = set_universe(‘HS300’) # 证券池,支持股票和基金
capital_base = 100000 # 起始资金
freq = ‘d’ # 策略类型,’d’表示日间策略使用日线回测,’m’表示日内策略使用分钟线回测
refresh_rate = 10 # 调仓频率,表示执行handle_data的时间间隔,若freq = ‘d’时间间隔的单位为交易日,若freq = ‘m’时间间隔为分钟
def initialize(account): # 初始化虚拟账户状态
pass
def handle_data(account): # 每个交易日的买入卖出指令
eq_AroonUp = aroonUp(account,20)
eq_AroonDown = aroonDown(account,20)
index_osc = aroonIndex(account,20)
buyList = []
for stk in account.valid_secpos:
order_to(stk, 0)
if index_osc > 50:
for stk in account.universe:
if eq_AroonUp[stk] – eq_AroonDown[stk] > 50:
buyList.append(stk)
for stk in buyList[:]:
if stk not in account.universe or account.referencePrice[stk] == 0 or np.isnan(account.referencePrice[stk]):
buyList.remove(stk)
for stk in buyList:
order(stk, account.referencePortfolioValue/account.referencePrice[stk]/len(buyList))
a股量化交易接口策略——阿隆指标相关推荐
- 使用python量化交易接口有哪些分析指标和策略?
量化交易有哪些指标可以用于分析呢?主要有技术面和基本面可以用于分析! 来看一下技术面和基本面有什么区别? 技术面更关注具体的价格,比如每天的开盘价.收盘价.以及和开盘价/收盘价/最低价/最高价相关的K ...
- 股票量化交易接口策略与资金管理才是实现投资理念的最佳方式
今天我们要一起来学习的是量化交易策略以及资金管理这部分的内容.我们常说如果想要在市场上获得成功就要对市场的本质有一定的认识.那么关于市场的本质以及不同金融投资理论流派见的分歧,其实从根本上来讲就是&q ...
- 股市量化交易接口如何获取A股历史数据?
股市量化交易接口其实也是对散户开放等是比较安全稳定接口,但是其接口通过第三方券商完成交易,主要用做于个人或机构做私募等量化投资数据参考的首选,比如说在股市中进行量化投资时,通过接口策略的定制将股票数据 ...
- 分享量化交易接口之网格交易的选股策略
分享量化交易接口之网格交易的选股策略: 1.低估值:PE<50 2.小市值:分行业按市值排列选市值小的30只 3.高波动:分行业在市值最小的30只中选出过去一年波动率最大的5只股票 4.更新持仓 ...
- 如何使用a股量化交易api接口?
在进行量化交易的需要的时候,可以考虑使用a股量化交易api接口作为分析工具. 如何使用a股量化交易api接口? 一是进行自主研发,不过这种办法费时费力,而且对技术也有一定要求. 第二种办法就是选择一个 ...
- 同花顺python_【本地直连】同花顺 Python量化交易接口上线
来源:雪球App,作者: 私募之家THS,(https://xueqiu.com/5808549553/129022113) 导读:同花顺智能交易终端MindGo版已上线2年多,凭借着同花顺深厚的技术 ...
- java程序化交易软件_TradeApi为A股程序化交易接口2.9.0发布,支持2019年12月的交易客户端版本...
TradeApi为A股程序化交易接口2.9.0发布 http://www.tradeap.cnwww.tradeapi.cn TradeApi为A股程序化交易接口, 支持C++.Python.Jav ...
- 量化交易接口怎么自动选股票?
现在的股市发展水平已经不像以前那么落后了,特别是对于高净值的投资者来说,在股票量化投资中,通过量化交易接口可以做很多方便又快捷的事,因为国内的实盘量化交易接口能够降低波动性以及对自动量化交易的定量对冲 ...
- 分享ricequant量化交易接口是如何执行交易功能?
ricequant量化交易接口执行交易功能不仅要包含基本的自动交易功能,还需要能够支持策略完成订单管理.资金管理和持仓管理功能,这样量化策略才能够全权接手交易大权. 适用场景: 关于交易的所有功能:下 ...
最新文章
- 使用指针字符串查找字串的个数
- Java8新特性Stream API与Lambda表达式详解(1)
- 应用程序对象正在关闭_Windows核心编程-内核对象
- Chrome浏览器插件新建标签页插件Momentum
- 那些年一起学习的PHP(三)
- 打开高效文本编辑之门_调用Linux的sed命令
- 【JS 逆向百例】网洛者反爬练习平台第三题:AAEncode 加密
- SpringBoot2入门笔记
- 获取元素到页面上的位置
- Nginx 代理设置
- Android8 for 9300,三星G9300官方固件rom刷机包 G9300ZCS3CRI1 安卓8.0
- logout退出登录该用get方法还是post方法?
- 用《圣经》做训练数据集,达特茅斯学院完美打造语言风格转换工具
- Mac无法打开CORE Keygen
- python(Django之组合搜索、JSONP、XSS过滤 )
- 国内CMS技术发展的外在表现形式
- 【机器学习】机器学习之一元线性回归
- w7设置双显示器_win7如何设置双显示器
- 负载均衡主要应用在哪里?
- 【STM32】 Keil程序开发环境