您现在的位置:福利彩票深圳风采开奖>> 外汇现货>> MT4>> MT4公式>>正文内容

深圳风采中5个号: MT4的网格交易策略源码[MT4公式]

  •  以下是我在网上看到的一个网格交易法的源码,希望更多的人贴一些网格交易法的源码,大家一起学习提高。




    //+------------------------------------------------------------------+

    //|                                                      Grid1.1.mq4 |

    //|                                          Copy* 顺势加码 2006 |

    //|                                                |

    //+------------------------------------------------------------------+

    #property copy* "Copy* 顺势加码 2006"

    #property link      "[email protected]"

    #include <stdlib.mqh>



    extern double GridStep=50;        //格幅

    extern double GridLength=100;   //格长

    double PivotPr, Multiple, i, Lots=0.1, STOPLEVEL, TP, ST;

    string Text="Grid";

    int Magic, j, BuyCount, SellCount, DTS, Ticket;

    //+------------------------------------------------------------------+

    int init()    //初始化部分将定义参数赋值: 每次在start里面都可能被赋值一次,消耗时间

       

        if (DTS==4)  DTS=2;

           else  DTS=0;

        Magic =105;

        GridStep =GridStep*Point;

        GridLength =GridLength*Point;

        STOPLEVEL =MarketInfo(Symbol(),MODE_STOPLEVEL)*Point;

        return(0);

       



    //+------------------------------------------------------------------+

    int start()

    {

        Multiple =NormalizeDouble((Bid-NormalizeDouble(Bid,DTS))/GridStep, 0); // 评rint 检查这地方出值为0  

        PivotPr =NormalizeDouble(Bid,DTS) +GridStep*Multiple;

        // 下网格布网

        for(i=PivotPr; i>=PivotPr-GridLength; i=i-GridStep)

           {

            BuyCount=0; SellCount=0;

            for(j=0; j<OrdersTotal(); j++)

               {

                if(OrderSelect(j,SELECT_BY_POS)==false) return(0);

      

                if(OrderMagicNumber()==Magic && NormalizeDouble(OrderOpenPr(),DTS)==NormalizeDouble(i,DTS) )

                  {

                   if(OrderType()==OP_BUY || OrderType()==OP_BUYLIMIT )    BuyCount++;

                   if(OrderType()==OP_SELL || OrderType()==OP_SELLSTOP )     SellCount++;

                  }

               }

            if(BuyCount==0)

               {

                TP =i+GridStep; ST=0;

                if(Ask-i>=STOPLEVEL)

                  {

                  Ticket =OrderSend(Symbol(),OP_BUYLIMIT,Lots,i,0,ST,TP,"Grid - BuyLimit",Magic,0,0);

                  if (Ticket>0) Alert(Symbol()," ",Ticket,"Grid -   BuyLimit=",i," 开仓成功");

                    else Alert( Symbol(),"Grid - BuyLimit=",i," 开仓失败:",ErrorDescription(GetLastError()));

                  Sleep(10000);

                  }

               if(Ask==i)

                  {

                   Ticket=OrderSend(Symbol(),OP_BUY,Lots,i,0,ST,TP,"Grid - Buy",Magic,0,0);

                   if (Ticket>0) Alert(Symbol()," ",Ticket,"Grid -   Buy=",i," 开仓成功");

                   else Alert( Symbol(),"Grid - Buy=",i," 开仓失败:",ErrorDescription(GetLastError()));

                   Sleep(10000);

                 }

              }

           if(SellCount==0)

              {

               TP=i-GridStep;ST=0;

               if(Bid-i>=STOPLEVEL)

                 {

                  Ticket=OrderSend(Symbol(),OP_SELLSTOP,Lots,i,0,ST,TP,"Grid - SellStop",Magic,0,0);

                  if (Ticket>0) Alert(Symbol()," ",Ticket,"Grid -   SellStop=",i," 开仓成功");

                  else Alert( Symbol(),"Grid - SellStop=",i," 开仓失败:",ErrorDescription(GetLastError()));

                  Sleep(10000);

                 }

               if(Bid==i)

                 {

                  Ticket=OrderSend(Symbol(),OP_SELL,Lots,i,0,ST,TP,"Grid - Sell",Magic,0,0);

                  if (Ticket>0) Alert(Symbol()," ",Ticket,"Grid -   BuyLimit=",i," 开仓成功");

                  else Alert( Symbol(),"Grid - BuyLimit=",i," 开仓失败:",ErrorDescription(GetLastError()));

                  Sleep(10000);

                 }

              }

          }   

      

       // 上网格布网

       for(i=PivotPr+GridStep;i<=PivotPr+GridLength;i=i+GridStep)

          {

      

           BuyCount=0;SellCount=0;

           for(j=0;j<OrdersTotal();j++)

              {

               if(OrderSelect(j,SELECT_BY_POS)==false) return(0);

               if(OrderMagicNumber()==Magic && NormalizeDouble(OrderOpenPrice(),DTS)==NormalizeDouble(i,DTS) )

                 {

                  if(OrderType()==OP_BUY || OrderType()==OP_BUYSTOP)    BuyCount++;   

                  if(OrderType()==OP_SELL || OrderType()==OP_SELLLIMIT)  SellCount++;

                 }

              }

           if(BuyCount==0)

              {

               TP=i+GridStep;ST=0;

               if(i-Ask>=STOPLEVEL)

                 {Ticket=OrderSend(Symbol(),OP_BUYSTOP,Lots,i,0,ST,TP,"Grid +  BuyStop",Magic,0,0);

                  if (Ticket>0) Alert(Symbol()," ",Ticket,"Grid +    BuyStop=",i," 开仓成功");

                  else Alert( Symbol(),"Grid +  BuyStop=",i," 开仓失败:",ErrorDescription(GetLastError()));

                  Sleep(10000);

                 }

               if(i==Ask)

                 {

                 Ticket=OrderSend(Symbol(),OP_BUY,Lots,i,0,ST,TP,"Grid +  Buy",Magic,0,0);

                 if(Ticket>0) Alert(Symbol(),"  ",Ticket,"Grid +   Buy=",i," 开仓成功");

                 else Alert( Symbol(),"Grid +  Buy=",i," 开仓失败:",ErrorDescription(GetLastError()));

                 Sleep(10000);

                }

             }

         if(SellCount==0)

             {

              TP=i-GridStep;ST=0;

              if(i-Bid>=STOPLEVEL)

                {

                Ticket=OrderSend(Symbol(),OP_SELLLIMIT,Lots,i,0,ST,TP,"Grid +  SellLimit",Magic,0,0);

                if (Ticket>0) Alert(Symbol()," ",Ticket,"Grid +    SellLimit=",i," 开仓成功");

                else Alert( Symbol(),"Grid +  SellLimit=",i," 开仓失败:",ErrorDescription(GetLastError()));

                Sleep(10000);

                }  

              if(i==Bid)

                {

                Ticket=OrderSend(Symbol(),OP_SELL,Lots,i,0,ST,TP,"Grid + Sell",Magic,0,0);

                if(Ticket>0) Alert(Symbol(),"  ",Ticket,"Grid +    Sell=",i," 开仓成功");

                else Alert( Symbol(),"Grid +  Sell=",i," 开仓失败:",ErrorDescription(GetLastError()));

                Sleep(10000);

                }

             }

        }

       

    //----

       return(0);

    }

    //+------------------------------------------------------------------+

福利彩票深圳风采开奖 www.ucl52.cn  

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

可联系技术人员 QQ: 1145508240  有需要帮忙请点击这里留言?。?!进行 有偿 编写!不贵!点击查看价格!

 


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

相关文章

    没有相关内容
 
  • “全国绿色工厂推进联盟”成立大会暨2017绿色工厂创建论坛在京召开 2019-04-23
  • 联合国:叙利亚新增92万无家可归者另有560万难民逃亡邻国 2019-04-23
  • 滨河西路南延工程进入路基施工阶段 2019-04-22
  • 中共中央直属机关党校 2019-04-22
  • 6月广州市内文化活动攻略来啦!除了70多场非遗活动,还有...... 2019-04-21
  • 电视剧抱团出海 又有哪些作品走出了国门 2019-04-20
  • 监察体制改革后 湘西半年72名公职人员主动交代问题 2019-04-20
  • 五月呼声报告: 陕11家单位上黑榜 官方回复房产投诉满意度低 2019-04-19
  • 无视婚变传闻 王浩信晒与朋友新旧对比照秀友情 2019-04-19
  • 那奔腾不息的母爱幸福暖流,总有一天你会懂 2019-04-18
  • 阿依果孜矿洞、三号矿坑让参观者为之震撼 2019-04-17
  • 被问是否承认“爆红” 陈伟霆的高情商回答亮了 2019-04-16
  • 荆楚网网络视听节目许可证 2019-04-16
  • 壮阔东方潮 奋进新时代 2019-04-15
  • 刘建辉:“产城人文”有机融合造就灯饰特色小镇 2019-04-15
  • 716| 848| 617| 406| 742| 773| 175| 1000| 914| 172|