好公式网用指标公式为投资注入科技力量!
您的位置:好公式网其他公式下单组件挂价发出委托3秒不成交的话撤单以对价再发出委托[文华财经]公式 对价下单指标源码

下单组件挂价发出委托3秒不成交的话撤单以对价再发出委托[文华财经]公式 对价下单指标源码

  • 指标公式类型:其他公式
  • 公式推荐星级:
  • 指标公式安全:已通过5款杀毒软件查杀,请放心下载!
  • 公式更新时间:2018-05-11 22:50:15
  • 指标公式标签:
  • 公式运行环境: WinXP/Win7/Win8/Win10/Win All
  • 指标公式语言:用简体中文编写

指标公式详细说明

好公式网(www.goodgongshi.com)告诉您:当前正要下载:下单组件挂价发出委托3秒不成交的话撤单以对价再发出委托[文华财经]公式 对价下单指标源码

  • 下面这个下单组件,目的是实现“挂价发出委托,3秒不成交的话撤单,以对价再发出委托”,半年前我曾经发过到论坛,经过一个多星期的讨论和更新,最后文华员工的答复是软件存在bug,没法实现~

    现在不知道能不能实现,上星期再次测试,结果是模型可以发出开、平仓信号,但是没有发出任何具体委托。

    因为,我这个下单组件,估计80%用文华实盘的人都会用到,到时候正常使用的话可以写到文华下单组件的示范里面供更多人使用~

    源码如下:

    var price,m,n;
    var bkid,skid,bpid,spid,spkid1,bpkid1,spkid2,bpkid2;//定义bkid,skid,bpid,spid
    var lastwithdrawfinsh;
    var laststate;
    var knall;//目标总开仓数
    void main() //
    {
    //kpn设为按照模型信号
    m=0;//发出信号时,0为挂价委托,1为对价委托,>=2为超价委托
    n=1;//再委托的委托价参数,0为挂价委托,1为对价委托,>=2为超价委托
    price=price(f_dealcode());//
    bkid=readglobalstr("bkid");
    skid=readglobalstr("skid");
    bpid=readglobalstr("bpid");
    spid=readglobalstr("spid");
    bpkid1=readglobalstr("bpkid1");
    spkid1=readglobalstr("spkid1");
    bpkid2=readglobalstr("bpkid2");
    spkid2=readglobalstr("spkid2");
    knall=readglobal("knall");
    //下面是3秒没有成交,撤单。
    lastwithdrawfinsh=readglobal("lastwithdraw");
    if(t_isnoorder()!=1 ) //有挂单的情况
    {
    //查询挂单然后进行撤单
    if(currenttime()-lastordertime()==3 && lastwithdrawfinsh==1) //如果3秒有委托未成交,全撤,下次进入会重新下委托
    {
    if(f_sig()==bk) //如果取出的信号为bp
    {
    if(t_isnoorder()==0)
    {
    messageout("bk撤单到了!");
    t_deleteorder(bkid);
    laststate=0;
    //
    }
    }
    if(f_sig()==sk) //如果取出的信号为sp
    {
    if(t_isnoorder()==0)
    {
    messageout("sk撤单到了!");
    t_deleteorder(skid);
    laststate=0;
    }
    }
    if(f_sig()==bp) //如果取出的信号为bp
    {
    if(t_sellposition(f_dealcode())>0&&t_isnoorder()==0)
    {
    messageout("bp撤单到了!");
    t_deleteorder(bpid);
    laststate=0;
    //
    }
    }
    if(f_sig()==sp) //如果取出的信号为sp
    {
    if(t_buyposition(f_dealcode())>0&&t_isnoorder()==0)
    {
    messageout("sp撤单到了!");
    t_deleteorder(spid);
    laststate=0;
    }
    }

    if(f_sig()==spk) //如果取出的信号为sp
    {
    if(t_isnoorder()==0)
    {
    messageout("spk撤单到了!");
    t_deleteorder(spkid1);
    t_deleteorder(spkid2);
    laststate=0;
    }
    }
    if(f_sig()==bpk) //如果取出的信号为bp
    {
    if(t_isnoorder()==0)
    {
    messageout("bpk撤单到了!");
    t_deleteorder(bpkid1);
    t_deleteorder(bpkid2);
    laststate=0;
    //
    }
    }

    lastwithdrawfinsh=0;
    }
    writeglobal("lastwithdraw", lastwithdrawfinsh);
    return;
    }
    lastwithdrawfinsh=1;
    if(f_freshsig()==1)//刷新现有的信号,有新信号
    {
    send();
    }
    else if(f_freshsig()==0)//如果是处理过的信号
    {
    if((t_orderstate(bkid)==2||t_orderstate(skid)==2||t_orderstate(bpid)==2||t_orderstate(spid)==2||t_orderstate(bpkid1)==2||t_orderstate(spkid1)==2||t_orderstate(bpkid2)==2||t_orderstate(spkid2)==2||t_orderstate(bkid)==3||t_orderstate(skid)==3||t_orderstate(bpid)==3||t_orderstate(spid)==3||t_orderstate(bpkid1)==3||t_orderstate(spkid1)==3||t_orderstate(bpkid2)==3||t_orderstate(spkid2)==3)&&laststate==0)//如果委托撤单
    {
    resend();
    laststate=1;
    }
    }
    writeglobalstr("bkid",bkid);
    writeglobalstr("skid",skid);
    writeglobalstr("bpid",bpid);
    writeglobalstr("spid",spid);
    writeglobalstr("bpkid1",bpkid1);
    writeglobalstr("spkid1",spkid1);
    writeglobalstr("bpkid2",bpkid2);
    writeglobalstr("spkid2",spkid2);
    writeglobal("laststate", laststate);
    writeglobal("lastwithdraw", lastwithdrawfinsh);
    writeglobal("knall",knall);

    }

    void send()
    {
    if(f_sig()==bpk && f_sigvalid()==1)//如果取出的信号为bpk 且信号不是消失状态
    {
    if(f_sellposition()!=0)
    {
    messageout("信号bpk生效,平掉所有卖仓");
    bpkid1=t_reducesellopito(f_dealcode(), offers(f_dealcode(),"bid1")+minprice(f_dealcode())*m,0); //平掉所有空头持仓
    }
    if(f_buyposition()>=0)//
    {
    messageout("信号bpk生效,开仓");
    knall=f_sigvol()+f_buyposition();
    bpkid2=t_addbuyopito(f_dealcode(), offers(f_dealcode(),"bid1")+minprice(f_dealcode())*m,f_sigvol()+f_buyposition()); //补充持仓

    }
    }
    if(f_sig()==spk && f_sigvalid()==1)//如果取出的信号为spk 且信号不是消失状态
    {
    if(f_buyposition()!=0)
    {
    spkid1=t_reducebuyopito(f_dealcode(), offers(f_dealcode(),"ask1")-minprice(f_dealcode())*m,0); //平掉所有多头持仓
    }
    if(f_sellposition()>=0)//如果买仓为0,不存在止赢止损问题,直接开仓
    {
    knall=f_sigvol()+f_sellposition();
    spkid2=t_addsellopito(f_dealcode(), offers(f_dealcode(),"ask1")-minprice(f_dealcode())*m,f_sigvol()+f_sellposition()); //补充空头持仓
    }
    }
    if(f_sig()==bp && f_sigvalid()==1)//如果取出的信号为bp 且信号不是消失状态
    {
    if(f_sellposition()!=0)
    {
    messageout("信号bp生效,平掉所有卖仓");
    bpid=t_reducesellopito(f_dealcode(), offers(f_dealcode(),"bid1")+minprice(f_dealcode())*m,0); //平掉所有空头持仓
    }
    }

    if(f_sig()==sp && f_sigvalid()==1)//如果取出的信号为sp 且信号不是消失状态
    {
    if(f_buyposition()!=0)
    {
    spid=t_reducebuyopito(f_dealcode(), offers(f_dealcode(),"ask1")-minprice(f_dealcode())*m,0); //平掉所有多头持仓
    }
    }

    if(f_sig()==bk && f_sigvalid()==1)//如果取出的信号为bk 且信号不是消失状态
    {

    if(f_buyposition()>=0 && f_sellposition()==0)//判断是不是部分成交
    {
    messageout("信号bk生效,开仓");
    knall=f_sigvol()+f_buyposition();
    bkid=t_addbuyopito(f_dealcode(), offers(f_dealcode(),"bid1")+minprice(f_dealcode())*m,f_sigvol()+f_buyposition()); //
    }
    }

    if(f_sig()==sk && f_sigvalid()==1)//如果取出的信号为sk 且信号不是消失状态
    {

    if(f_sellposition()>=0 && f_buyposition()==0)//如果买仓为0,不存在止赢止损问题,直接开仓
    {
    knall=f_sigvol()+f_sellposition();
    skid=t_addsellopito(f_dealcode(), offers(f_dealcode(),"ask1")-minprice(f_dealcode())*m,f_sigvol()+f_sellposition()); //
    }
    }
    }

    void resend()
    {
    if(f_sig()==bpk && f_sigvalid()==1)//如果取出的信号为bpk 且信号不是消失状态
    {
    if(f_sellposition()!=0)
    {
    messageout("信号bpk生效,平掉所有卖仓");
    bpkid1=t_reducesellopito(f_dealcode(), offers(f_dealcode(),"bid1")+minprice(f_dealcode())*n,0); //平掉所有空头持仓
    }
    if(f_buyposition()<=knall)//判断是不是部分成交
    {
    messageout("信号bpk生效,开仓");
    bpkid2=t_addbuyopito(f_dealcode(), offers(f_dealcode(),"bid1")+minprice(f_dealcode())*n,knall); //补充持仓
    }
    }
    if(f_sig()==spk && f_sigvalid()==1)//如果取出的信号为spk 且信号不是消失状态
    {
    if(f_buyposition()!=0)
    {
    spkid1=t_reducebuyopito(f_dealcode(), offers(f_dealcode(),"ask1")-minprice(f_dealcode())*n,0); //平掉所有多头持仓
    }
    if(f_sellposition()<=knall)//如果买仓为0,不存在止赢止损问题,直接开仓
    {
    spkid2=t_addsellopito(f_dealcode(), offers(f_dealcode(),"ask1")-minprice(f_dealcode())*n,knall); //补充空头持仓
    }
    }
    if(f_sig()==bp && f_sigvalid()==1)//如果取出的信号为bp 且信号不是消失状态
    {
    if(f_sellposition()!=0)
    {
    messageout("信号bp生效,平掉所有卖仓");
    bpid=t_reducesellopito(f_dealcode(), offers(f_dealcode(),"bid1")+minprice(f_dealcode())*n,0); //平掉所有空头持仓
    }
    }

    if(f_sig()==sp && f_sigvalid()==1)//如果取出的信号为sp 且信号不是消失状态
    {
    if(f_buyposition()!=0)
    {
    spid=t_reducebuyopito(f_dealcode(), offers(f_dealcode(),"ask1")-minprice(f_dealcode())*n,0); //平掉所有多头持仓
    }
    }

    if(f_sig()==bk && f_sigvalid()==1)//如果取出的信号为bk 且信号不是消失状态
    {

    if(f_buyposition()<=knall && f_sellposition()==0)//判断是不是部分成交
    {
    messageout("信号bk生效,开仓");
    bkid=t_addbuyopito(f_dealcode(), offers(f_dealcode(),"bid1")+minprice(f_dealcode())*n,knall); //补多仓
    }
    }

    if(f_sig()==sk && f_sigvalid()==1)//如果取出的信号为sk 且信号不是消失状态
    {

    if(f_sellposition()<=knall && f_buyposition()==0)//如果买仓为0,不存在止赢止损问题,直接开仓
    {
    skid=t_addsellopito(f_dealcode(), offers(f_dealcode(),"ask1")-minprice(f_dealcode())*n,knall); //补空仓
    }
    }
    }


  >>>使用本站搜索工具可以找到更多下单组件挂价发出委托3秒不成交的话撤单以对价再发出委托[文华财经]公式 对价下单指标源码

指标公式下载地址

点这下载软件
好公式网提供全网最全的指标公式软件,感谢您的支持!鼠标双击图片可看大图!
下载请点击右侧“立即下载”,如只有源码,请点击本页面右侧的导入方法按图导入!
本站指标基于网友分享,仅供研究自学,勿作他用,本站对下载使用不承担任何责任!

指标公式下载注意

    ☉ 好公式网发布的指标公式主要用于软件技术面分析,仅供参考,勿用于实际操作,据此操作风险自负!

    ☉ 解压密码:www.goodgongshi.com 就是好公式网域名,希望大家看清楚,切勿输错。

    ☉ tnc和tni格式指标公式,仅可以用通达信软件引入使用,例如可以用通达信软件引入使用指标公式;

    ☉ tne格式指标公式,仅可以用通达信软件公式编辑器5.0版导入,高版本兼容低版本;

    ☉ fnc格式指标公式,可以用大智慧软件新一代高速行情分析系统股票软件使用,少部分可以用分析家软件引入使用;

    ☉ alg格式指标公式,仅仅可以用飞狐交易师软件引入使用;exp格式指标公式,仅可以用大智慧经典版软件引入使用;

    ☉ hxf格式指标公式,仅可以用同花顺软件引入使用。

    ☉ 如果您发现下载软件链接错误,请联系管理员报告错误。

    ☉ 好公式网欢迎各位网友帮忙宣传转发本站网址,有您的支持,我们会做得更好!

    ☉ 本文下单组件挂价发出委托3秒不成交的话撤单以对价再发出委托[文华财经]公式 对价下单指标源码仅供学习研究。

猜你喜欢

学了又学