程式交易
(→公式计算需引用之前最大周期数) |
(→账户函数交易) |
||
(未显示2个用户的12个中间版本) | |||
第31行: | 第31行: | ||
− | + | 所谓的虚实盘同步交易,是让整个策略基于整套虚盘数据运行,所有的交易决定,都是基于虚盘计算而作出的。而实盘状况不影响虚盘,实盘只关心时刻紧跟虚盘的脚步。'''虚盘有什么仓位,实盘就尽可能做到跟虚盘一致'''。 | |
第44行: | 第44行: | ||
综上所述,虚实盘同步是比较理想的一种策略驱动模式。 | 综上所述,虚实盘同步是比较理想的一种策略驱动模式。 | ||
+ | |||
+ | 跟虚实盘同步相关的一套交易函数在公式编辑器中的类别是: | ||
+ | |||
+ | "虚盘交易函数"、"虚盘状态函数"、“虚盘绩效”三个类别<br> | ||
+ | [[文件:vtrade.jpg]] | ||
==账户函数交易== | ==账户函数交易== | ||
第52行: | 第57行: | ||
对于这种策略,我们提供了直接操纵实盘的函数。无需等待虚盘信号,直接发出交易指令。 | 对于这种策略,我们提供了直接操纵实盘的函数。无需等待虚盘信号,直接发出交易指令。 | ||
+ | 账户函数在公式编辑器中相关类别是:“实盘交易函数”<br> | ||
+ | [[文件:rtrade.jpg]] | ||
==策略设置== | ==策略设置== | ||
第74行: | 第81行: | ||
====默认下单量==== | ====默认下单量==== | ||
− | + | '''固定口数''',容易理解<br> | |
− | + | '''固定金额''',容易理解<br> | |
+ | '''权益百分比''',需要提醒,权益是指持仓与现金的价值之和<br> | ||
+ | |||
+ | 最后需要说明的是,此默认下单量,主要是方便测试,不应用于真实交易。 | ||
+ | 因为虚盘资金情况,很难跟实盘资金情况契合。 | ||
+ | |||
+ | 例如,假设您选择按权益的百分比下单;虚盘以某个初始资金开始,到当前K线,已经赚了几个亿,而这时您显然不能按这个设置对实盘进行交易。 | ||
+ | |||
+ | 建议实盘时,把下单量作为公式的参数,通过手工指定下单的单量。定期调整。 | ||
+ | |||
+ | 而非虚实盘同步的策略,可以通过A_系列实盘账户函数取得账户真实权益,计算下单量。 | ||
+ | |||
+ | '''最小下单股数''',例如股票是100股。<br> | ||
+ | '''舍去至___的倍数''',跟最小下单股数的区别是,这是控制每次下多少份的倍数,不一定是最小下单股数倍数,也可能是两倍200股。 | ||
====公式计算需引用之前最大周期数==== | ====公式计算需引用之前最大周期数==== | ||
第102行: | 第122行: | ||
下次持仓数量改变时同步:上例中,9点的仓位在10点打开时,不会发生同步。但如果10点15分又买入1口,那么实盘会在15分开2口。 | 下次持仓数量改变时同步:上例中,9点的仓位在10点打开时,不会发生同步。但如果10点15分又买入1口,那么实盘会在15分开2口。 | ||
− | + | 市场价优于虚盘开仓均价时同步:虚盘成交后,实盘只有在价格优于虚盘信号时才同步 | |
+ | 不同步信号也发送1次指令:若关闭了同步,This Bar 的 Buy/Sell/SellShort/BuyToCover 指令在虚盘开平仓成功时也会发送一次交易指令, | ||
+ | 并且只发送1次,若不能成交则不会继续同步,这样是为了使实盘成交与虚盘接近,若错过了时间则不交易。若关闭此选项并且关闭同步, | ||
+ | 那么虚盘的开平仓只作为标注,不参与实际交易。 | ||
第130行: | 第153行: | ||
[[image:tradeMonitor.jpg]] | [[image:tradeMonitor.jpg]] | ||
− | == | + | 有持仓之后,默认会显示持仓信息和盈亏点数:<br> |
− | + | 1是持仓1口,-5是亏损5跳<br> | |
+ | [[image:postion.jpg]]<br> | ||
+ | 是否显示持仓信息可以设置:<br> | ||
+ | [[image:tradeSetting.jpg]]<br> | ||
+ | 去掉窗口底部的‘显示持仓线’勾选则不显示此信息块。<br> | ||
+ | 勾选‘显示盈亏百分比’,则原显示盈亏跳数改为显示百分比<br> | ||
+ | |||
+ | ==蜂鸣提示== | ||
+ | 在登陆了交易之后,有几种情况会发出蜂鸣提示或警告。<br> | ||
+ | 1.交易时段切换。从开市到休市,从休市到开市,都会发出“嘟嘟嘟”的响声。<br> | ||
+ | 2.同步或追单失败。会发出稍高频的“滴滴”声。<br> | ||
+ | <br> | ||
+ | 如果不想听到蜂鸣声,可以到菜单,交易>交易助手>普通设置,找到“开启PC喇叭报警”这个选项,把勾选去掉。<br> | ||
+ | |||
+ | ==图形锁定== | ||
− | + | 在自动交易状态下,k线图上将锁定不能切换到其他品种和周期,也不允许切换复权状态。<br> | |
+ | 如果需要看其他,建议多打开一个窗口,如必须在原窗口下切换,需关闭交易开关才能操作。 | ||
− | + | ==手工仓转换为策略仓== | |
+ | 由于每个策略具有单独的ID号,其中手工仓位也属于一个单独的ID号,所以手工单需要平仓时,必须人工操作平仓。<br> | ||
+ | <br> | ||
+ | 如果需要用策略平人工单怎么办呢? 也是有办法的,只要告诉系统,想把手工仓位转换为策略仓位即可。<br> | ||
+ | 操作步骤:<br> | ||
+ | 第一步:在历史成交管理页面,根据策略号“人工”,找到相应的手工仓位。;平仓单号为-1的就是未平仓位。<br> | ||
+ | [[文件:x.jpg]]<br> | ||
+ | 第二步,假设希望转换为“boll通道策略”,那么先打开正确的品种,并且把"boll通道策略”放到图上。<br> | ||
+ | 第三步,在持仓列表中点击想改变策略名的持仓,拖动它,放到策略所在图表中。<br> | ||
+ | 第四步,重启软件。<br> |
2014年5月30日 (五) 16:32的最后版本
目录 |
[编辑] 定义
程式化交易,又称自动交易,是指通过运行公式指标自动进行的交易,具体策略编写请参考公式教程。
特别是智能交易公式一节
[编辑] 启动自动交易
只需将智能交易类指标(仅该类指标才能程式化交易),又称为“策略”,放在主图上,在登陆交易账号的状态下,打开交易开关,即可进行自动化交易。
[编辑] 交易模式
有两种交易模式。
第一种是“虚盘实盘同步”式交易。
第二种是“账户函数”交易。
[编辑] 虚盘实盘同步交易
我们知道,理想中的交易和实际交易总会有距离。
实际交易能成交的价格,往往比出现理想信号的价格不利。甚至会发生无法成交的情形。
所以,这里有一个所谓“虚盘”和“实盘”的概念。
虚盘,就是指基于理想状态的测评下发生的所有的虚拟交易。以及在此基础之上,所有依赖于交易而存在的盈亏、仓位、资金变化等一整套数据。
而实盘,就是指实际的,发送到交易所的交易,以及在此基础上,所有依赖交易而发生变化的整套数据。
所谓的虚实盘同步交易,是让整个策略基于整套虚盘数据运行,所有的交易决定,都是基于虚盘计算而作出的。而实盘状况不影响虚盘,实盘只关心时刻紧跟虚盘的脚步。虚盘有什么仓位,实盘就尽可能做到跟虚盘一致。
这么做的好处,是做到了,评价策略的成功与否,只跟数据和算法有关。
执行状况当然也会影响策略是否成功,但不会影响到对策略本身是否优异的评价;
一个策略是否成功,被切割成了“策略是否优秀”+ “执行是否得力”两个清晰的层面。
如果让执行因素影响策略的运行,那么虚盘和实盘信号一定会严重错位,错位之后,您还能对照虚盘和实盘的绩效吗?不能。于是也就无法评估“执行是否得力”。
综上所述,虚实盘同步是比较理想的一种策略驱动模式。
跟虚实盘同步相关的一套交易函数在公式编辑器中的类别是:
[编辑] 账户函数交易
有某些策略,更关心执行层面的因素,对策略本身的历史评测不是那么敏感。
例如某些高频策略。
对于这种策略,我们提供了直接操纵实盘的函数。无需等待虚盘信号,直接发出交易指令。
[编辑] 策略设置
把策略放到图上时,会自动弹出策略设置对话框,让您决定策略的系列运行参数。
这个工作还可以在策略放到图上之后随时进行,随时调整参数。方法是:在策略名上点击右键,然后选择“策略设置”。
策略设置有三个页面,分别是
[编辑] 属性
可以看到,这里的设置是针对虚盘的。 包括,虚盘的初始资金,手续费等,这些好理解。
[编辑] 滑价
滑价,这个设置的用途是什么呢,是用来模拟不利的滑动。
例如,开多,委托价格1000元,卖1也是1000。一般的模拟会以1000元成交,但是为了追求贴合实际情形,通过滑价这个设定,强行以一个不利的滑价成交。例如,假设滑价设置为1跳,该交易品种的MinDiff(最小变动价位)是5元,那么虚盘成交价会是1005元。
[编辑] 默认下单量
固定口数,容易理解
固定金额,容易理解
权益百分比,需要提醒,权益是指持仓与现金的价值之和
最后需要说明的是,此默认下单量,主要是方便测试,不应用于真实交易。 因为虚盘资金情况,很难跟实盘资金情况契合。
例如,假设您选择按权益的百分比下单;虚盘以某个初始资金开始,到当前K线,已经赚了几个亿,而这时您显然不能按这个设置对实盘进行交易。
建议实盘时,把下单量作为公式的参数,通过手工指定下单的单量。定期调整。
而非虚实盘同步的策略,可以通过A_系列实盘账户函数取得账户真实权益,计算下单量。
最小下单股数,例如股票是100股。
舍去至___的倍数,跟最小下单股数的区别是,这是控制每次下多少份的倍数,不一定是最小下单股数倍数,也可能是两倍200股。
[编辑] 公式计算需引用之前最大周期数
假设设置为n,那么前n根K线都不会发生交易,即使有信号。
这个参数要跟据所用的公式具体需要引用多少数据而设定。 例如公式用到ma(c, 5),由于均线需要5根k线相加,那么说明只需要引用5根。那就设为5。 假如公式用到ma( c, 200),那么说明至少需要200根k线之后才应该有信号,那就设为200。 如果不是很确定,那一般就取默认的50,也没什么问题。
[编辑] 自动交易
[编辑] 实盘仓位与虚盘同步
不勾选同步,策略依然会发出实盘委托单。但是如果委托没有成交,不会一直去下单。而勾选同步之后,只要一定时间内没成交就会立刻撤单继续追。
[编辑] 同步模式
总是同步:虚盘有多少仓位,实盘就强行同步成多少仓位。假设打开软件时是10点,而虚盘9点发生了买入持仓1口到现在,那么实盘会立刻尝试买入1口。
下次持仓方向改变时同步:上例中,9点的仓位在10点打开时,不会发生同步。直到9点的仓位被平掉,又新开仓位,才发生同步。
下次持仓数量改变时同步:上例中,9点的仓位在10点打开时,不会发生同步。但如果10点15分又买入1口,那么实盘会在15分开2口。
市场价优于虚盘开仓均价时同步:虚盘成交后,实盘只有在价格优于虚盘信号时才同步
不同步信号也发送1次指令:若关闭了同步,This Bar 的 Buy/Sell/SellShort/BuyToCover 指令在虚盘开平仓成功时也会发送一次交易指令, 并且只发送1次,若不能成交则不会继续同步,这样是为了使实盘成交与虚盘接近,若错过了时间则不交易。若关闭此选项并且关闭同步, 那么虚盘的开平仓只作为标注,不参与实际交易。
[编辑] 公式参数
跟指标的调整参数功能相同。
[编辑] 多策略组合
多策略组合能够平滑资金曲线,降低交易风险。我们不但支持不同品种下运行不同策略,也支持同一品种运用多个策略。
同一品种如何应用多个策略呢?只需将一个品种打开多个图形,再将策略拖放至各个图形上即可。
[编辑] 监控交易
策略放到图上之后,有一系列信息帮助监控当时的虚实盘状况。
请看图示说明。
有持仓之后,默认会显示持仓信息和盈亏点数:
1是持仓1口,-5是亏损5跳
是否显示持仓信息可以设置:
去掉窗口底部的‘显示持仓线’勾选则不显示此信息块。
勾选‘显示盈亏百分比’,则原显示盈亏跳数改为显示百分比
[编辑] 蜂鸣提示
在登陆了交易之后,有几种情况会发出蜂鸣提示或警告。
1.交易时段切换。从开市到休市,从休市到开市,都会发出“嘟嘟嘟”的响声。
2.同步或追单失败。会发出稍高频的“滴滴”声。
如果不想听到蜂鸣声,可以到菜单,交易>交易助手>普通设置,找到“开启PC喇叭报警”这个选项,把勾选去掉。
[编辑] 图形锁定
在自动交易状态下,k线图上将锁定不能切换到其他品种和周期,也不允许切换复权状态。
如果需要看其他,建议多打开一个窗口,如必须在原窗口下切换,需关闭交易开关才能操作。
[编辑] 手工仓转换为策略仓
由于每个策略具有单独的ID号,其中手工仓位也属于一个单独的ID号,所以手工单需要平仓时,必须人工操作平仓。
如果需要用策略平人工单怎么办呢? 也是有办法的,只要告诉系统,想把手工仓位转换为策略仓位即可。
操作步骤:
第一步:在历史成交管理页面,根据策略号“人工”,找到相应的手工仓位。;平仓单号为-1的就是未平仓位。
第二步,假设希望转换为“boll通道策略”,那么先打开正确的品种,并且把"boll通道策略”放到图上。
第三步,在持仓列表中点击想改变策略名的持仓,拖动它,放到策略所在图表中。
第四步,重启软件。