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

您現在的位置:程序化交易>> 期貨公式>> 交易開拓者(TB)>> 開拓者公式>>正文內容

開拓者CXH99唐奇安通道交易策略源碼[開拓者公式]

開拓者CXH99唐奇安通道交易策略源碼


Params
                        Numeric LongLength(20);                        // 長周期
                        Numeric ShortLength(10);                // 短周期
                        Numeric TrailingScale(0.5);                // 增倉比例
                        Numeric StopLossSet(2);                        // 止損比例
                        Numeric Lots(1);                                // 交易數量                               
Vars
                        Numeric MinPoint;                                // 最小變動單位
                        NumericSeries AvgTR;                        // ATR
                        Numeric N;                          // N 值
                        NumericSeries DonchianHi;           // 唐奇安通道上軌,延后1個Bar
                        NumericSeries DonchianLo;           // 唐奇安通道下軌,延后1個Bar
                        Numeric ExitHighestPrice;           // 離市時判斷需要的N周期最高價
                        Numeric ExitLowestPrice;            // 離市時判斷需要的N周期最低價
                        Numeric myEntryPrice;               // 開倉價格
                        Numeric myExitPrice;                // 平倉價格
                        Bool SendOrderThisBar(False);   // 當前Bar有過交易
                        NumericSeries preEntryPrice(0); // 前一次開倉的價格
Begin
                        If(BarStatus == 0)
                        {
                                preEntryPrice = InvalidNumeric;
                        } Else
                        {
                                preEntryPrice = preEntryPrice[1];
                        } //程序化交易 m.kzuj.com.cn
       
                        AvgTR = XAverage(TrueRange,LongLength);
                        N = AvgTR[1];       
                        DonchianHi = HighestFC(High[1],LongLength);
                        DonchianLo = LowestFC(Low[1],LongLength);       
                        ExitLowestPrice = LowestFC(Low[1],ShortLength);
                        ExitHighestPrice = HighestFC(High[1],ShortLength);
                        Commentary("N="+Text(N));
                        Commentary("preEntryPrice="+Text(preEntryPrice));
                        PlotNumeric("上軌",DonchianHi);
                        PlotNumeric("下軌",DonchianLo);
                        PlotNumeric("退出上軌",ExitHighestPrice);
                        PlotNumeric("退出下軌",ExitLowestPrice);
                       
                        /*/////////////////////////////////開倉////////////////////////////////////////*/
                        If(MarketPosition == 0 && High > DonchianHi)
                        {
                                myEntryPrice = min(high,DonchianHi);
                                myEntryPrice = IIF(myEntryPrice < Open, Open,myEntryPrice); // 大跳空的時候用開盤價代替
                                preEntryPrice = myEntryPrice;
                                Buy(Lots,myEntryPrice);
                                SendOrderThisBar = True;
                        }
                        If(MarketPosition == 0 && Low < DonchianLo)
                        {
                                myEntryPrice = max(low,DonchianLo);
                                myEntryPrice = IIF(myEntryPrice > Open, Open,myEntryPrice); // 大跳空的時候用開盤價代替
                                preEntryPrice = myEntryPrice;
                                SendOrderThisBar = True;
                                SellShort(Lots,myEntryPrice);
                        }
                        /*///////////////////////////////止盈加倉////////////////////////////////////*/
                        If(MarketPosition == 1)
                        {      
                                Commentary("ExitLowestPrice="+Text(ExitLowestPrice));
                                If(Low < ExitLowestPrice)
                                {
                                        myExitPrice = max(Low,ExitLowestPrice);
                                        myExitPrice = IIF(myExitPrice > Open, Open,myExitPrice); // 大跳空的時候用開盤價代替
                                        Sell(0,myExitPrice);    // 數量用0的情況下將全部平
                                }Else
                                {
                                        If(preEntryPrice!=InvalidNumeric)
                                        {
                                                If(Open >= preEntryPrice + TrailingScale*N) // 如果開盤就超過設定的1/2N,則直接用開盤價增倉。
                                                {
                                                        myEntryPrice = Open;
                                                        preEntryPrice = myEntryPrice;
                                                        Buy(Lots,myEntryPrice);
                                                        SendOrderThisBar = True;
                                                }       
                                                while(High >= preEntryPrice + TrailingScale*N) // 以最高價為標準,判斷能進行幾次增倉
                                                {
                                                        myEntryPrice = preEntryPrice + TrailingScale * N;//程序化交易 www.chengxuhuajiaoyi.com
                                                        preEntryPrice = myEntryPrice;
                                                        Buy(Lots,myEntryPrice);
                                                        SendOrderThisBar = True;                                       
                                                }
                                        }                       
                                        /*///////////////////////////////////止損策略///////////////////////////////*/
                                        If(Low <= preEntryPrice - StopLossSet * N && SendOrderThisBar == false) // 加倉Bar不止損
                                        {
                                                myExitPrice = preEntryPrice - StopLossSet * N;
                                                myExitPrice = IIF(myExitPrice > Open, Open,myExitPrice); // 大跳空的時候用開盤價代替
                                                Sell(0,myExitPrice); // 數量用0的情況下將全部平倉
                                        }
                                } // www.chengxuhuajiaoyi.com
                        }Else If(MarketPosition ==-1) // 有空倉的情況
                        {
                                Commentary("ExitHighestPrice="+Text(ExitHighestPrice));
                                If(High > ExitHighestPrice)
                                {
                                        myExitPrice = Min(High,ExitHighestPrice);
                                        myExitPrice = IIF(myExitPrice < Open, Open,myExitPrice); // 大跳空的時候用開盤價代替
                                        BuyToCover(0,myExitPrice);    // 數量用0的情況下將全部平倉
                                }Else
                                {
                                        If(preEntryPrice!=InvalidNumeric)
                                        {
                                                If(Open <= preEntryPrice - TrailingScale*N) // 如果開盤就超過設定的1/2N,則直接用開盤價增倉。
                                                {
                                                        myEntryPrice = Open;
                                                        preEntryPrice = myEntryPrice;
                                                        SellShort(Lots,myEntryPrice);
                                                        SendOrderThisBar = True;
                                                }
                                                while(Low <= preEntryPrice - TrailingScale*N) // 以最低價為標準,判斷能進行幾次增倉
                                                {
                                                        myEntryPrice = preEntryPrice - TrailingScale * N;
                                                        preEntryPrice = myEntryPrice;
                                                        SellShort(Lots,myEntryPrice);
                                                        SendOrderThisBar = True;
                                                }
                                }
                                /*///////////////////////////////////止損策略///////////////////////////////*/
                                If(High >= preEntryPrice + StopLossSet * N && SendOrderThisBar==false) // 加倉Bar不止損
                                {
                                        myExitPrice = preEntryPrice + StopLossSet * N;
                                        myExitPrice = IIF(myExitPrice < Open, Open,myExitPrice); // 大跳空的時候用開盤價代替
                                        BuyToCover(0,myExitPrice); // 數量用0的情況下將全部平倉
                                }
                        }
                }
End

 

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

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

 


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

相關文章

    沒有相關內容
  主站蜘蛛池模板: 日韩精品一区二区三区中文3d | 成年人在线免费观看网站 | 最近2019年中文字幕6 | 天天操天天草 | 91精品国产闺蜜国产在线 | 免费播放国产性色生活片 | 狠狠做狠狠做综合日日 | 好吊色几万部永久免费视频 | 天天操婷婷 | 久久国产精品免费专区 | 18性夜影院午夜寂寞影院免费 | 免费看大片视频 | 日韩美女色高清在线看 | 天天干影院 | 精品一区二区三区波多野结衣 | 色综合久久五月 | tom影院亚洲国产一区二区 | 国产清纯91天堂在线观看 | 激情综合网婷婷 | 免费精品国偷自产在线读大二 | 一级国产视频 | 一级欧美日韩 | 在线观看深夜视频 | 大香网伊人久久综合网2020 | 午夜96影视 | 深夜福利国产 | 国产精品福利无圣光一区二区 | 日本不卡中文字幕 | 天天躁夜夜躁狠狠躁2021西西 | 亚洲国产成人最新精品资源 | 人喾交性专区免费看 | 久久精品成人免费看 | 欧美日韩在线播一区二区三区 | 久久高清精品 | 欧美午夜视频一区二区三区 | 波多野结衣手机在线视频 | 男女那个视频免费 | 欧美曰韩一区二区三区 | 亚洲欧美日韩精品香蕉 | 欧美成人一区二区三区不卡 | 日韩手机看片 |