以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  函数下单命令K线走完前N分钟或者提前多少秒确认信号下单  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=174118)

--  作者:OscarDeng
--  发布时间:2020/1/31 21:12:59
--  函数下单命令K线走完前N分钟或者提前多少秒确认信号下单
我需要一个函数下单命令K线走完前N分钟或者提前多少秒确认信号下单,不复核, 以前用文华8用下面的函数, 金字塔提供了什么函数给我呢? 


CHECKSIG_MIN 设置信号确认与复核的指令价方式(逐分钟回测)

用法:
CHECKSIG_MIN(SIG,MODE1,TIME1,MODE2,TIME2);SIG为信号,MODE1为信号确认方式,TIME1信号确认时间,MODE2信号复核方式,TIME2信号复核时间。

注:
1、写了这个函数以后,模型会按照指令价方式运行。
2、使用该函数时,基础数据为1分钟数据。(TIME1 TIME2不支持小数)
3、该函数不支持加载在15分钟以下周期使用
4、SIG位置为交易指令,包括BK\\SK\\BP\\SP\\BPK\\SPK\\CLOSEOUT所有指令。
5、MODE1位置为信号确认方式,有A和B两种:
A:出信号TIME1分钟确认信号下单。TIME1>0为出信号TIME1分钟确认信号下单,TIME1=0为出信号立即下单。
B:K线走完前TIME1分钟确认信号下单。TIME1>0为K线走完前TIME1分钟确认信号下单(不支持加载在日线以上周期),TIME1=0为K线走完确认信号下单
6、MODE2位置为信号复核方式,有C,D,E和F四种:
C:下单后TIME2分钟进行信号复核。TIME2>0为下单后TIME2分钟进行信号复核,TIME2=0为不复核。
D:K线走完前TIME2分钟进行信号复核。TIME2>0为K线走完前TIME2分钟进行信号复核(不支持加载在日线以上周期),TIME2=0为K线走完复核。
E:每一个以小节为结束时间的K线提前复核。(小节包括:商品合约10:15-10:30休盘、11:30-13:30休市、21:00-23:00(或23:30或1:00或2:30)期间夜盘小节、收盘前最后一根k线;股指合约11:30-13:00休市以及收盘前最后一根k线)TIME2>0为每一个以小节为结束时间的K线提前TIME2分钟进行信号复核(不支持加载在日线以上周期),TIME2=0为K线走完复核。其他非小节时间结束的K线为K线走完复核。
F:以收盘时间为结束时间的K线为提前TIME2分钟复核。TIME2>0为以收盘时间为结束时间的K线提前TIME2分钟进行信号复核(不支持加载在日线以上周期),TIME2=0为K线走完复核。其他非收盘时间结束的K线为K线走完复核。
7、模型中写入该函数,一根K线只能有一个信号。
8、MULTSIG、MULTSIG_MIN、CHECKSIG和CHECKSIG_MIN函数不能同时出现在一个模型中
9、该函数只允许在模组中使用,不支持加载到盒子。
10、未使用该函数的指令,默认的信号执行方式为K线走完确认信号下单。
11、参数TIME1、TIME2非0时,该函数不支持加载到日线以上的周期中使用。
12、如果用该函数设置了信号复核,复核时产生了信号消失,会进行信号消失处理。信号消失的处理方式:
还没有成交时的信号消失处理-撤单
BK、SK信号消失处理-平仓
BPK、SPK信号消失处理-平仓+恢复建仓
BP、SP信号消失处理-恢复建仓

几种典型的信号复核确认方式对应的写法举例:
CHECKSIG_MIN(SIG,\'A\',0,\'D\',0);//出信号立即下单,K线走完复核
CHECKSIG_MIN(SIG,\'A\',N,\'D\',0);//出信号N分钟确认信号下单,K线走完复核
CHECKSIG_MIN(SIG,\'A\',N,\'C\',0);//出信号N分钟确认信号下单,不进行复核
CHECKSIG_MIN(SIG,\'B\',N,\'D\',0);//K线走完前N分钟确认信号下单,K线走完复核
CHECKSIG_MIN(SIG,\'B\',N,\'C\',0);//K线走完前N分钟确认信号下单,不复核
CHECKSIG_MIN(SIG,\'B\',0,\'C\',N);//K线走完确认信号下单
CHECKSIG_MIN(SIG,\'B\',0,\'D\',0);//K线走完确认信号下单
CHECKSIG_MIN(SIG,\'A\',0,\'C\',0);//出信号立即下单,不复核
CHECKSIG_MIN(SIG,\'A\',0,\'F\',10);//出信号立即下单,收盘前最后一根K线提前10分钟进行复核。

例:
C>O,BK;
C<O,SP;
CHECKSIG_MIN(BK,\'A\',5,\'D\',0);//设置BK信号,出信号5分钟后确认下单,K线走完复核。
CHECKSIG_MIN(SP,\'A\',0,\'C\',10);//设置SP信号,出信号立即下单,下单后10分钟复核。
AUTOFILTER;

--  作者:wenarm
--  发布时间:2020/1/31 22:36:48
--  

这个需求,在金字塔中有以下两种途径实现。
1.直接使用走完k线模式中的,提前n秒下单功能。

此主题相关图片如下:8.png
按此在新窗口浏览图片

2.通过代码实现