人人爽天天爽夜夜爽qc-人人爽天天爽夜夜爽曰-人人天天爱天天做天天摸-人人天天夜夜-色网站在线-色网站在线看

您現在的位置:程序化交易>> 期貨公式>> 文華財經>> 文華財經知識>>正文內容

麻煩看看下面的組件為什么沒有正確執行? [贏順期貨]

  • 咨詢內容:

    組件的目的:掛價開、平倉,30秒不能成交撤單對價追單。

     

    VAR Price,KPN,M;
    VAR BKID,SKID,BPID,SPID;//定義BKID,SKID,BPID,SPID
    VAR LastWithDrawFinsh; 

    VOID MAIN() //
    {

          KPN=1;//定義開平倉手數為1手
          M=0;//
          Price=Price(F_DealCode());//

     IF (F_Sig()==BK) //如果信號是買開信號
     BKID=T_Deal(F_DealCode(),0,0,KPN,Offers( F_DealCode(),"bid1")+0*MinPrice(F_DealCode()));//
     IF (F_Sig()==SK) //如果信號是賣開信號
     SKID=T_Deal(F_DealCode(),1,0,KPN,Offers( F_DealCode(),"ask1")-0*MinPrice(F_DealCode()));//
     IF (F_Sig()==BP) //如果信號是買平信號
     {
      IF (F_SellPosition()>0 && F_SellPosition()<KPN)//如果當前模型空頭持倉大于0小于KPN
      BPID=T_Deal(F_DealCode(),0,1,F_SellPosition(),Offers( F_DealCode(),"bid1")+0*MinPrice(F_DealCode()));//
      //
      ELSE IF (F_SellPosition()>=KPN)//
      BPID=T_Deal(F_DealCode(),0,1,KPN,Offers( F_DealCode(),"bid1")+0*MinPrice(F_DealCode()));//發出KPN手平空指令
      ELSE IF (F_SellPosition()==0)//
      MessageOut ("當前沒有空頭持倉");
     }
     IF (F_Sig()==SP) //如果信號是賣平信號
     {
      IF (F_BuyPosition()>0 && F_BuyPosition()<KPN)//如果當前模型多頭持倉小于KPN大于0
      SPID=T_Deal(F_DealCode(),1,1,F_BuyPosition(),Offers( F_DealCode(),"ask1")-0*MinPrice(F_DealCode()));//
      //
      ELSE IF (F_BuyPosition()>=KPN)//如果當前模型多頭持倉大于等于KPN手
      SPID=T_Deal(F_DealCode(),1,1,KPN,Offers( F_DealCode(),"ask1")-0*MinPrice(F_DealCode()));//
      ELSE IF (F_BuyPosition()==0)//如果當前持倉為0
      MessageOut ("當前沒有多頭持倉");
     }
    IF (F_Sig()==BPK) //如果信號是買平開信號
     {
      IF (F_SellPosition()>0 && F_SellPosition()<KPN)//如果當前模型空頭持倉大于0小于KPN
      {
       T_Deal(F_DealCode(),0,1,F_SellPosition(),Offers( F_DealCode(),"bid1")+0*MinPrice(F_DealCode()));//以當前模型空頭持倉手數發出買平委托
       
       T_Deal(F_DealCode(),0,0,KPN,Offers( F_DealCode(),"bid1")+0*MinPrice(F_DealCode()));//以KPN手發出買開委托
      }
      ELSE IF (F_SellPosition()>=KPN)//如果當前空頭持倉大于等于KPN手
      {
       T_Deal(F_DealCode(),0,1,KPN,Offers( F_DealCode(),"bid1")+0*MinPrice(F_DealCode()));//以KPN手發出買平委托
       
       T_Deal(F_DealCode(),0,0,KPN,Offers( F_DealCode(),"bid1")+0*MinPrice(F_DealCode()));//以KPN手發出買開委托
      }
      ELSE IF (F_SellPosition()==0)//空頭持倉為0
      {
       MessageOut ("當前沒有空頭持倉");
       T_Deal(F_DealCode(),0,0,KPN,Offers( F_DealCode(),"bid1")+0*MinPrice(F_DealCode()));//以KPN手發出買開委托
      }
     }
    IF (F_Sig()==SPK) //如果信號是賣平開信號
     {
      IF (F_BuyPosition()>0 && F_BuyPosition()<KPN)//如果當前模型多頭持倉大于0小于KPN
      {
       T_Deal(F_DealCode(),1,1,F_BuyPosition(),Offers( F_DealCode(),"ask1")-0*MinPrice(F_DealCode()));//以當前模型多頭持倉手數發出賣平委托
       
       T_Deal(F_DealCode(),1,0,KPN,Offers( F_DealCode(),"ask1")-0*MinPrice(F_DealCode()));
      }
      ELSE IF (F_BuyPosition()>=KPN)
      {
       T_Deal(F_DealCode(),1,1,KPN,Offers( F_DealCode(),"ask1")-0*MinPrice(F_DealCode()));
       
       T_Deal(F_DealCode(),1,0,KPN,Offers( F_DealCode(),"ask1")-0*MinPrice(F_DealCode()));
      }
      ELSE IF (F_BuyPosition()==0)//多頭持倉為0
      {
       MessageOut ("當前沒有多頭持倉");
       T_Deal(F_DealCode(),1,0,KPN,Offers( F_DealCode(),"ask1")-0*MinPrice(F_DealCode()));
      }
     }
          //下面是30秒沒有成交,撤單。
     //IF(CurrentTime()-LastOrderTime()<2 && LastOrderTime()!=0) 
     // RETURN; //控制組件的執行頻率 兩秒執行一次
     //icount=F_SigCount();
     LastWithDrawFinsh=ReadGlobal("LASTWITHDRAW");
     IF(T_IsNoOrder()!=1 ) //有掛單的情況
     {
      //查詢掛單然后進行撤單
      //need added code
      IF(CurrentTime()-LastOrderTime()>30 && LastWithDrawFinsh==1) //如果30秒有委托未成交,全撤,下次進入會重新下委托
      {
       T_DeleteOrderAll();//撤掉所有未成交委托。
       LastWithDrawFinsh=0;
      }
      WriteGlobal("LASTWITHDRAW", LastWithDrawFinsh);
      RETURN;
     }
     LastWithDrawFinsh=1; 
     F_FreshSig(); //刷新現有的信號
     

          IF (F_Sig()==BK) //如果信號是買開信號(以對價+M倍最少波動),保證成交
     BKID=T_Deal(F_DealCode(),0,0,KPN,Offers( F_DealCode(),"ask1")+M*MinPrice(F_DealCode()));//以最新價+0個最小表動價位發出KPN手的買開委托
     IF (F_Sig()==SK) //如果信號是賣開信號(以對價-M倍最少波動),保證成交
     SKID=T_Deal(F_DealCode(),1,0,KPN,Offers( F_DealCode(),"bid1")-M*MinPrice(F_DealCode()));//以最新價-0個最小表動價位發出KPN手的賣開委托
     IF (F_Sig()==BP) //如果信號是買平信號
     {
      IF (F_SellPosition()>0 && F_SellPosition()<KPN)
      BPID=T_Deal(F_DealCode(),0,1,F_SellPosition(),Offers( F_DealCode(),"ask1")+M*MinPrice(F_DealCode()));

      ELSE IF (F_SellPosition()>=KPN)//如果當前空頭持倉大于KPN手
      BPID=T_Deal(F_DealCode(),0,1,KPN,Offers( F_DealCode(),"ask1")+M*MinPrice(F_DealCode()));
      ELSE IF (F_SellPosition()==0)//空頭持倉為0
      MessageOut ("當前沒有空頭持倉");
     }
     IF (F_Sig()==SP) 
     {
      IF (F_BuyPosition()>0 && F_BuyPosition()<KPN)
      SPID=T_Deal(F_DealCode(),1,1,F_BuyPosition(),Offers( F_DealCode(),"bid1")-M*MinPrice(F_DealCode()));
      ELSE IF (F_BuyPosition()>=KPN)
      SPID=T_Deal(F_DealCode(),1,1,KPN,Offers( F_DealCode(),"bid1")-M*MinPrice(F_DealCode()));
      ELSE IF (F_BuyPosition()==0)//如果當前持倉為0
      MessageOut ("當前沒有多頭持倉");
          }
    IF (F_Sig()==BPK) //如果信號是買平開信號
     {
      IF (F_SellPosition()>0 && F_SellPosition()<KPN)
      {
       T_Deal(F_DealCode(),0,1,F_SellPosition(),Offers( F_DealCode(),"ask1")+M*MinPrice(F_DealCode()));
       T_Deal(F_DealCode(),0,0,KPN,Offers( F_DealCode(),"ask1")+M*MinPrice(F_DealCode()));//
      }
      ELSE IF (F_SellPosition()>=KPN)//如果當前空頭持倉大于等于KPN手
      {
       T_Deal(F_DealCode(),0,1,KPN,Offers( F_DealCode(),"ask1")+M*MinPrice(F_DealCode()));//
       T_Deal(F_DealCode(),0,0,KPN,Offers( F_DealCode(),"ask1")+M*MinPrice(F_DealCode()));//
      }
      ELSE IF (F_SellPosition()==0)//空頭持倉為0
      {
       MessageOut ("當前沒有空頭持倉");
       T_Deal(F_DealCode(),0,0,KPN,Offers( F_DealCode(),"ask1")+M*MinPrice(F_DealCode()));//以KPN手發出買開委托
      }
     }
    IF (F_Sig()==SPK) //
     {
      IF (F_BuyPosition()>0 && F_BuyPosition()<KPN)//
      {
       T_Deal(F_DealCode(),1,1,F_BuyPosition(),Offers( F_DealCode(),"bid1")-M*MinPrice(F_DealCode()));//
       T_Deal(F_DealCode(),1,0,KPN,Offers( F_DealCode(),"bid1")-M*MinPrice(F_DealCode()));//
      }
      ELSE IF (F_BuyPosition()>=KPN)//
      {
       T_Deal(F_DealCode(),1,1,KPN,Offers( F_DealCode(),"bid1")-M*MinPrice(F_DealCode()));//
       T_Deal(F_DealCode(),1,0,KPN,Offers( F_DealCode(),"bid1")-M*MinPrice(F_DealCode()));//
      }
      ELSE IF (F_BuyPosition()==0)//
      {
       MessageOut ("當前沒有多頭持倉");
       T_Deal(F_DealCode(),1,0,KPN,Offers( F_DealCode(),"bid1")-M*MinPrice(F_DealCode()));//
      }
     }
     WriteGlobal("LASTWITHDRAW", LastWithDrawFinsh);
    }
     

     

  • 贏順技術人員: 老師們吃飯去了?

     

  • 贏順客服:

    組件不發委托的原因有很多,不光是編寫的問題,向您咨詢下,您加載的是什么合約,所有的信號都沒有委托?還是第一根信號沒有委托?是否進行了倉位初始化的設定?

     

  • 網友回復: 用了這個下單組件,下午出現開倉信號后不斷幫我開倉,一秒一次開倉信號,直到沒有資金。。。。。。。。。我在下單參數里面選擇了“等K線走完下單“,應該對此沒有什么影響啊 原來同樣的模型,用軟件自身的下單設置,沒有使用過濾也是用得好好的啊~

     

  • 網友回復: 是組件問題還是模型問題呢?

 

如果以上指標公式不適用于您常用的行情軟件

或者您想改編成選股公式,以便快速選出某種形態個股的話,

可以聯系我們相關技術人員 QQ: 262069696  點擊在線交流進行 有償 改編!

 


【字體: 】【打印文章】【查看評論

相關文章

    沒有相關內容
主站蜘蛛池模板: 亚洲欧美日韩高清 | h动态图男女啪啪27报gif | 国产精品suv一区二区 | 在线五月婷婷 | 黄网站视频观看免费 | 国产一级片视频 | 精品国产影院 | 国产区精品一区二区不卡中文 | 一个人在线观看www视频 | 国产亚洲精品线观看77 | 黄色毛片在线看 | 视频在线观看网站免费 | 亚洲图片欧美文学小说激情 | 日韩久久综合 | 亚洲成a人不卡在线观看 | 天天综合网天天综合色 | 亚洲伦理影院 | 欧美日韩片 | 国产日产久久高清欧美一区 | 在线国产不卡 | 日本福利视频 | 日韩中文字幕精品一区在线 | 一级片免费在线 | 一级片中文字幕 | 777艳片 | 国产成人亚洲综合小说区 | 一插综合网 | 无遮挡一级毛片呦女视频 | 黄色片免费在线观看 | 欧美3p在线观看一区二区三区 | 免费一级毛片在线播放不收费 | 美女黄页在线观看 | xxxx日本在线播放免费不卡 | 成人欧美在线观看 | 亚洲福利 影院 | 成人短视频在线观看 | 国产精品偷伦视频播放 | 2019亚洲日韩新视频 | 黄色网 在线播放 | 久久精品国产精品青草不卡 | 国产精品成人va在线观看 |