A. 怎么学习python量化交易
下面教你八步写个量化交易策略——单股票均线策略
1 确定策略内容与框架
若昨日收盘价高出过去20日平均价今天开盘买入股票
若昨日收盘价低于过去20日平均价今天开盘卖出股票
只操作一只股票,很简单对吧,但怎么用代码说给计算机听呢?
想想人是怎么操作的,应该包括这样两个部分
既然是单股票策略,事先决定好交易哪一个股票。
每天看看昨日收盘价是否高出过去20日平均价,是的话开盘就买入,不是开盘就卖出。每天都这么做,循环下去。
对应代码也是这两个部分
definitialize(context):
用来写最开始要做什么的地方
defhandle_data(context,data):
用来写每天循环要做什么的地方
2 初始化
我们要写设置要交易的股票的代码,比如 兔宝宝(002043)
definitialize(context):
g.security='002043.XSHE'#存入兔宝宝的股票代码
3 获取收盘价与均价
首先,获取昨日股票的收盘价
#用法:变量=data[股票代码].close
last_price=data[g.security].close#取得最近日收盘价,命名为last_price
然后,获取近二十日股票收盘价的平均价
#用法:变量=data[股票代码].mavg(天数,‘close’)
#获取近二十日股票收盘价的平均价,命名为average_price
average_price=data[g.security].mavg(20,'close')
4 判断是否买卖
数据都获取完,该做买卖判断了
#如果昨日收盘价高出二十日平均价,则买入,否则卖出
iflast_price>average_price:
买入
eliflast_price<average_price:
卖出
问题来了,现在该写买卖下单了,但是拿多少钱去买我们还没有告诉计算机,所以每天还要获取账户里现金量。
#用法:变量=context.portfolio.cash
cash=context.portfolio.cash#取得当前的现金量,命名为cash
5 买入卖出
#用法:order_value(要买入股票股票的股票代码,要多少钱去买)
order_value(g.security,cash)#用当前所有资金买入股票
#用法:order_target(要买卖股票的股票代码,目标持仓金额)
order_target(g.security,0)#将股票仓位调整到0,即全卖出
6 策略代码写完,进行回测
把买入卖出的代码写好,策略就写完了,如下
definitialize(context):#初始化
g.security='002043.XSHE'#股票名:兔宝宝
defhandle_data(context,data):#每日循环
last_price=data[g.security].close#取得最近日收盘价
#取得过去二十天的平均价格
average_price=data[g.security].mavg(20,'close')
cash=context.portfolio.cash#取得当前的现金
#如果昨日收盘价高出二十日平均价,则买入,否则卖出。
iflast_price>average_price:
order_value(g.security,cash)#用当前所有资金买入股票
eliflast_price<average_price:
order_target(g.security,0)#将股票仓位调整到0,即全卖出
现在,在策略回测界面右上部,设置回测时间从20140101到20160601,设置初始资金100000,设置回测频率,然后点击运行回测。
7 建立模拟交易,使策略和行情实时连接自动运行
策略写好,回测完成,点击回测结果界面(如上图)右上部红色模拟交易按钮,新建模拟交易如下图。 写好交易名称,设置初始资金,数据频率,此处是每天,设置好后点提交。
8 开启微信通知,接收交易信号
点击聚宽导航栏我的交易,可以看到创建的模拟交易,如下图。 点击右边的微信通知开关,将OFF调到ON,按照指示扫描二维码,绑定微信,就能微信接收交易信号了。
B. 怎样编程可以让通达信程序化交易
最通俗的回答就是:按照通达信的编写规则,编写正确了就可以进行程序化交易。
这个东西专业的人也没法回答你,你编写正确了就可以。具体怎样你要问的具体点
C. 期货量化交易编程怎么弄
方法:1、前提是你必须有自己的期货交易账户,每个期货公司都可以开,现在不用出门就可以用手机在线开户。
2、其次,要选择合适的交易软件。其中交易开拓者的软件是最好编程的,很多交易团队基本都在用这个软件。确定账户和交易软件。
3、剩下的就是如何用编程语言编写策略,并将其输入交易软件。编程其实并不难。在程序化交易中,程序化只占程序化交易的30%。好的编程可以简化代码,提高运行速度,增加交易策略的多样性和完整性,实现一些复杂的策略。
4、如果没有这方面的编程能力,可以参加期货交易的相关培训课程。另外70%主要是策略、仓位设置、交易品种选择、程序化交易心态控制、网络设置等的组合管理。
拓展资料:
1、 战略的确定。一个成功的量化交易系统的开发过程必须是恰当的。如何找到一个成功的量化交易策略,是构建量化交易体系的基础。无论是基本面还是技术面,都可以用量化的方法进行分析,进而得出量化的交易策略。比如,从根本上说,GDP的增长和货币流通量的增加可以用定量的方法来分析和描述。技术上,移动平均线和指数smma是物理和化学策略思想的来源。
2、 经典理论。很多量化投资策略思路来源于传统经典投资理论,比如经典商品期货技术分析主要包括技术分析的理论基础、道指理论、图表介绍、趋势基本概念、主要反转形态、持续形态、交易量和仓位兴趣、长期图表和商品指数、移动平均线、摆动指数和相反意见、盘中点图、三点转向和优化点图、艾略特波浪理论、时间周期等等。这些经典理论有的有具体的指标和具体的应用理论,有的只有理论,需要根据理论生成具体的应用指标来完成策略的测试。因此,经典投资理论可以通过量化思维将理论中的具体逻辑量化为指标或事件形成交易信号,通过信号优化检验实现经典理论的投资思路。这种方式可以有效实现经典理论,同时也可以从原有的经典理论中衍生出周边的投资方法,是量化策略发展初期的主流模式。
3、 逻辑推理。逻辑学的战略思维大多来源于宏观基础信息,其量化战略思维是通过对宏观信息的量化处理,梳理出符合宏观基础信息的量化模型。典型的量化策略包括行业轮动量化策略、市场情绪轮动量化策略、上下游供需量化策略等。这种策略思路来源非常广泛,数据一般不规范,很难形成标准。目前,许多对冲基金都有类似的想法来生成量化策略产品。
4、 总结经验。经验总结是量化战略思想的另一个主要来源。在使用量化策略交易之前,市场上有大量经验丰富的投资者,其中许多人在长期稳定回报方面表现突出。因此,他们对市场的看法和交易思路成为了量化策略开发者的模仿对象,有经验的交易者也愿意量化一些他们觉得相对固化、能够获得稳定回报的交易策略,最终可以用机器自动交易,只监控交易。这可以大大减少交易中消耗的能量。在这个前提下,出现了一个与经验丰富的交易者合作的量化策略团队。
操作环境:iPad第九代15.1 交易开拓者4.5.2