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

[求助]下單組件如何編寫?智能分批+滑點控制 [贏順期貨]

  • 咨詢內容:

    wh3中有一些下單組件的范例,正在學習中,想完成以下內容,不知道怎么寫,特來求助:

    1、根據買一買一智能分批;

    2、如果下單數大于10手才激活智能分批;

    3、滑點希望能控制在3個以內;

     

    謝謝~

     

  • 贏順技術人員:

    您可以嘗試編寫一下,我們來給您作修改

     

  • 贏順客服:

    我是想寫,但是不知道下單組件中如何獲取信號的委托下單數量

     

  • 網友回復: F_SigVol()取當前信號的手數。
    用法:
    F_SigVol() 取當前的信號的手數, 如果當前信號是BPK(5), 則返回5.
    例:
     IF(F_SigVol() == VarOpi) //如果信號的倉位等于變量VarOpi

     

  • 網友回復:
    以下內容為程序代碼:

    1 //主要策略:設定分批總手數,開平倉時,自動根據買賣盤動態分批。
    2 VAR N;//定義總手數。
    3 VAR KYN;//定義目前已有手數。
    4 VAR PYN;//定義目前已有手數。
    5 VAR YYN;//定義目前已有手數。
    6 VAR KPN;//賣1量
    7 VAR PPN;//買1量
    8 VAR Status;//定義交易所狀態修正變量,開倉總手數
    9 VAR level;//定義開始分倉的數量
    10 VOID MAIN()//主函數。
    11 {
    12     N=F_SigVol();//開始分倉的總手數
    13     level=10;
    14     KPN=Offers(F_DealCode(),"askvol1");//取得當前合約賣1量。
    15     PPN=Offers(F_DealCode(),"bidvol1");//取得當前合約買1量。
    16 Status=T_IsExchangeOpen(F_DealCode());//判斷當前合約所屬交易所的狀態。
    17     IF(F_FreshSig()==1)
    18     {
    19         KYN=F_BuyPosition();//取得交易系統合約的多頭持倉
    20         PYN=F_SellPosition();//取得交易系統合約的空頭持倉
    21         IF(F_Sig()==BK&&T_IsExchangeOpen(F_DealCode())==1)//當前信號為開多倉信號并且交易所處于開盤狀態的時候。
    22         {
    23             BKDeal();//運行開多倉分批函數。
    24         }
    25         ELSE IF(F_Sig()==SK&&T_IsExchangeOpen(F_DealCode())==1)//當前信號為開空倉信號并且交易所處于開盤狀態的時候。
    26         {
    27             SKDeal();//運行開空倉分批函數。
    28         }
    29         ELSE IF(F_Sig()==BP&&T_IsExchangeOpen(F_DealCode())==1) //當前信號為平空倉信號并且交易所處于開盤狀態的時候。
    30         {
    31             BPDeal();//運行平空倉分批函數。
    32         }
    33         ELSE IF(F_Sig()==SP&&T_IsExchangeOpen(F_DealCode())==1) //當前信號為平多倉信號并且交易所處于開盤狀態的時候。
    34         {
    35             SPDeal();//運行平多倉分批函數。
    36         }
    37     }
    38     ELSE IF(F_FreshSig()==0)
    39     {
    40         YYN=ReadGlobal("C");//讀取注冊表中上一次記錄的已有手數。
    41         KYN=ReadGlobal("A");//讀取注冊表中上一次記錄的已有手數。
    42         PYN=ReadGlobal("B");//讀取注冊表中上一次記錄的已有手數。
    43         IF(F_Sig()==BK&&T_IsExchangeOpen(F_DealCode())==1)//當前信號為開多倉信號并且交易所處于開盤狀態的時候。
    44         {
    45             BKDeal();//運行開多倉分批函數。
    46         }
    47         ELSE IF(F_Sig()==SK&&T_IsExchangeOpen(F_DealCode())==1)//當前信號為開空倉信號并且交易所處于開盤狀態的時候。
    48         {
    49             SKDeal();//運行開空倉分批函數。
    50         }
    51         ELSE IF(F_Sig()==BP&&T_IsExchangeOpen(F_DealCode())==1) //當前信號為平空倉信號并且交易所處于開盤狀態的時候。
    52         {
    53             BPDeal();//運行平空倉分批函數。
    54         }
    55         ELSE IF(F_Sig()==SP&&T_IsExchangeOpen(F_DealCode())==1) //當前信號為平多倉信號并且交易所處于開盤狀態的時候。
    56         {
    57             SPDeal();//運行平多倉分批函數。
    58         }
    59     }
    60     WriteGlobal("A",KYN);//將本次運行過后的以開倉手數記錄到注冊表中。
    61     WriteGlobal("B",PYN);//將本次運行過后的以開倉手數記錄到注冊表中。
    62     WriteGlobal("C",YYN);//將本次運行過后的以開倉手數記錄到注冊表中。
    63 }
    64 VOID BKDeal()//定義開倉分批函數
    65 {
    66     IF(N<level)
    67     {
    68         T_Deal(F_DealCode(),0,0,N,Offers(F_DealCode(),"ask1"));//做多指定手數。
    69     }
    70     ELSE IF(N>level)
    71     {
    72         IF(YYN+PPN<=N)//如果已開倉手數小于需要開倉手數。
    73         {
    74             IF(F_Sig()==BK&&T_IsNoOrder()==1&&Status==1)//如果當前信號為BK并且無掛單。
    75             {
    76                 IF(F_SigVol()<=N)
    77                 {
    78                     KPN = F_Sig
    79
    80                 T_Deal(F_DealCode(),0,0,KPN,Offers(F_DealCode(),"ask1"));//做多指定手數。
    81                 YYN=YYN+KPN;//已開倉手數增加KPN
    82             }
    83             ELSE MessageOut("等待成交");//其他情況顯示"等待成交"。
    84         }
    85         ELSE IF(YYN+KPN>N && YYN<N)//如果已開倉手數大于需要開倉手數。
    86         {
    87             IF(F_Sig()==BK&&T_IsNoOrder()==1&&Status==1)//如果當前信號為BK并且無掛單。
    88             {
    89             T_Deal(F_DealCode(),0,0,N-YYN,Offers(F_DealCode(),"ask1"));//做多指定手數。
    90             MessageOut("good");
    91             }
    92             ELSE
    93             MessageOut("等待成交");//其他情況顯示"等待成交"。
    94         }
    95         ELSE
    96         {
    97             MessageOut("開多倉分批已成交");//新的已開倉手數等于需要開倉手數。
    98         }
    99     }
    100 }

 

有思路,想編寫各種指標公式,程序化交易模型,選股公式,預警公式的朋友

可聯系技術人員 QQ: 262069696  點擊在線交流進行 有償 編寫!不貴!點擊查看價格!

 


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

相關文章

    指定的模型還沒有相關內容!
主站蜘蛛池模板: 最近高清中文在线国语字幕| 老扒夜夜春宵粗大好爽aa毛片| 日本wwwxxxxx| 欧美日韩在线观看免费| 免费精品久久久久久中文字幕| 五月激情综合网| 夫妻免费无码V看片| 中文字幕无码免费久久| 日韩精品久久无码人妻中文字幕 | 综合558欧美成人永久网站| 好吊妞在线成人免费| 日本成人免费网站| 亚洲日韩精品欧美一区二区一 | 美女扒开尿囗给男人玩的动图| 国产成人精品免费视频大全可播放的| 中文天堂最新版在线精品| 欧美一区二区三区婷婷月色 | 国产一区内射最近更新| 91影院在线观看| 国产精品爽黄69天堂a| Channel| 婷婷被公交车猛烈进出视频| 国产色视频一区| 一本色道久久88—综合亚洲精品| 日本肉漫在线观看| 亚洲av无码片一区二区三区| 欧美日韩国产高清视频| 亚洲网站免费看| 男女裸体影院高潮| 台湾无码一区二区| 色妞bbbb女女女女| 国产在线精品国自产拍影院午夜| 亚洲综合在线另类色区奇米| 在线精品国精品国产不卡| uyghur69sexvideos| 性xxxx视频播放免费| 久久99国产精品久久99| 亚洲视频第一页| 草久视频在线观看| 国产亚洲精久久久久久无码 | 文轩探花高冷短发|