您现在的位置:程序化交易>> 期货公式>> 文华财经>> 文华财经知识>>正文内容

关于SETSIGPRICETYPE函数更新后的问题 [文华财经]

  • 咨询内容:  SETSIGPRICETYPE(SIG,PRICE,IsCancel),不同的信号设置不同的委托方式。用法:SETSIGPRICETYPE(SIG,PRICE1,IsCancel),设置SIG指令的委托方式,PRICE为委托价格,IsCancel为是否启用终止下单。注:1、SIG位置为交易指令,包括BK\SK\BP\SP\BPK\SPK\CLOSEOUT\STOP\STOP1所有指令。2、PRICE位置为委托价格,包括以下八种:(1)NEW_ORDER 最新价注:委托方式为NEW_ORDER时支持回测,计算信号价格为信号发出时的最新价。例如,收盘价模型,当前k线出信号,价格取下一根k线开盘价(2)PASSIVE_ORDER 排队价(3)ACTIVE_ORDER 对价(4)TRACING_ORDER 自动连续追A:首次下单委托价格参数设置->程序化参数->追价设置的价格方式执行。B:股票合约不支持追价委托(5)CMPETITV_ORDER 超价A:下单基准按参数设置->程序化参数->超价设置的价格方式执行(6)LIMIT_ORDER 市价(7)SIGPRICE_ORDER 触发价(8)指定价 可以为具体的数值,也可以为表达式,即支持如下的写法:A:HHV(H,3);//定义A为3个周期内的最高价SETSIGPRICETYPE(BK,A);//BK信号按照3个周期的最高价委托3、参数IsCancel写入CANCEL_ORDER表示启用终止下单程序,  即:根据PRICE委托后,N秒不成交自动撤单并终止下单。  参数IsCancel位置不写或写入其他内容,则代表不启用终止下单。(1)参数N,在参数设置->程序化参数中进行设置。(2)终止下单不考虑小节休息。4、模型编写中未使用该函数设置指令委托价格方式,默认按照交易参数中设置的程序化默认下单方式进行委托。5、SETALLSIGPRICETYPE不能和SETSIGPRICETYPE同时使用。6、该函数只在模组中或者信号预警盒子勾选直接下单不需要手动确认时才生效。

    其中:3、参数IsCancel写入CANCEL_ORDER表示启用终止下单程序,  即:根据PRICE委托后,N秒不成交自动撤单并终止下单。  参数IsCancel位置不写或写入其他内容,则代表不启用终止下单。(1)参数N,在参数设置->程序化参数中进行设置。(2)终止下单不考虑小节休息。
    我的模型中是这么写的SETSIGPRICETYPE(SK,SIGPRICE_ORDER);SETSIGPRICETYPE(BK,SIGPRICE_ORDER);SETSIGPRICETYPE(BP,SIGPRICE_ORDER,CANCEL_ORDER);SETSIGPRICETYPE(SP,SIGPRICE_ORDER,CANCEL_ORDER);SETSIGPRICETYPE(CLOSEOUT,TRACING_ORDER);不是过滤模型,没有写入AUTOFILTER.

    我的问题有三个:以BK方向为例1、比如我的BK成交了,SP出信号之后120秒没有成交自动撤单了,后面如果再次价格到达平仓SP的价位,新的SP平仓信号能够开出来吗?2、如果BK成交了,SP出信号之后120秒没有成交自动撤单了,并且没有再次出现SP的价位,到了closeminute1=3的时候,我的指令是closeout,新的closeout能够开出来吗?(按照我的理解是既然SP撤单了,那么BK的那手多头就空出来了,没有被占用,应该可以开出来啊)3、如果BK没有成交,SP的信号出来后,还是按照之前的版本的BK自动做撤单处理吗?
    谢谢!

     

  • 文华技术人员:   1、比如我的BK成交了,SP出信号之后120秒没有成交自动撤单了,后面如果再次价格到达平仓SP的价位,新的SP平仓信号能够开出来吗?    ——不能,自动撤单的意思,指的是把委托撤掉,不是改变信号     当时模组理论信号已经是SP了,后续会等待出其他的信号了。不会因为撤单在执行一次的    您注意区分信号和委托的区别  2、如果BK成交了,SP出信号之后120秒没有成交自动撤单了,并且没有再次出现SP的价位,到了closeminute1=3的时候,我的指令是closeout,新的closeout能够开出来吗?(按照我的理解是既然SP撤单了,那么BK的那手多头就空出来了,没有被占用,应该可以开出来啊)    ——和问题1是一样的,如果是过滤模型。SP后会继续等待开仓。不会有清仓信号的出现的  3、如果BK没有成交,SP的信号出来后,还是按照之前的版本的BK自动做撤单处理吗?

     

     平仓信号发出时:

    ① 如果之前发出的开仓信号委托还没有发出,则停止执行平仓信号;

    ② 如果之前发出的开仓信号有挂单(还没有成交或部分成交),先撤掉对应的挂单,然后执行平仓指令(平实际的模组持仓手数,如果0手持仓就不发委托);

     

     

    ——————————————————

     

     您实际遇到的问题是:委托价格不太合理,无法及时成交,想通过程序撤单控制后续不再被交易所撮合这笔单子

     

     撤单后,这笔持仓您需要手动去处理,或者是把后续的处理思路写成自动化的模型,由模组来接管

     

     如:可以使用追价,N秒不成交自动撤单后继续委托

     

     或者用算法交易来做后续的精细化控制


     

  • 文华客服:  2、如果BK成交了,SP出信号之后120秒没有成交自动撤单了,并且没有再次出现SP的价位,到了closeminute1=3的时候,我的指令是closeout,新的closeout能够开出来吗?(按照我的理解是既然SP撤单了,那么BK的那手多头就空出来了,没有被占用,应该可以开出来啊)   ——和问题1是一样的,如果是过滤模型。SP后会继续等待开仓。不会有清仓信号的出现的 我不是过滤模型,SP之后closeout如果能够开出来也可以啊 。。。

    /(ㄒoㄒ)/~~

     

  • 网友回复:

    closeout是清仓,清子账户的全部持仓

     

    所以如果您是非过滤模型,可以用上面的写法,全部平掉

     

    比如:BK5 ——SP1自动撤单——closeout会平掉5

     

  • 网友回复: 如果是BK5,SP5没成交自动撤单,closeout开不出来,对吧?

 

有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友

可联系技术人员 QQ: 511411198  点击这里给我发消息进行 有偿 编写!不贵!点击查看价格!


【字体: 】【打印文章】【查看评论

相关文章

    没有相关内容