EaCode小胖李 发表于 2022-12-26 16:51:55

ProfitClosePart3()三阶盈利减仓,可以分三次对盈利订单进行减仓,分批出场

函数名称
void ProfitClosePart3(double LotsX,int ProfitX1,double CloseX1,int ProfitX2,double CloseX2,int ProfitX3,double CloseX3,int MagicX)
函数介绍


ProfitClosePart3()可以分三次对盈利订单进行减仓。当盈利点数达到ProfitX1,减仓一次;当盈利点数达到ProfitX2,再减仓一次;当盈利点数达到ProfitX3,再减仓一次;一共可减仓三次。

每次减仓都是按照上一次剩余手数的百分比进行减仓。


//举例:订单盈利100点减仓10%,订单盈利200点,再减仓20%,订单盈利300点,再减仓30%。
ProfitClosePart3(1,100,10,200,20,300,30,MAGIC);

参数介绍

LotsX:减仓的基准手数,也是减仓前的初始手数。比如你开仓时的初始手数是1手,那这里就填入1手。
ProfitX1:第一次减仓启动盈利点数。
CloseX1:第一次减仓百分比。
ProfitX2:第二次减仓启动盈利点数。
CloseX2:第二次减仓百分比。
ProfitX3:第三次减仓启动盈利点数。
CloseX3:第三次减仓百分比。
MagicX:订单的魔术码,你的EA的魔术码是多少,这里填上即可。

函数定义

注意:本人发布的函数均为实战开发所用,低价或免费发布并不赚钱,仅限懂编程的朋友使用,不提供指导,因为人工成本巨贵,感谢朋友们海涵。void ProfitClosePart3(double LotsX,int ProfitX1,double CloseX1,int ProfitX2,double CloseX2,int ProfitX3,double CloseX3,int MagicX)
{

   double Lots1= NormalizeDouble(LotsX*CloseX1/100,2);
   double Lots2=   NormalizeDouble((LotsX-Lots1)*CloseX2/100,2);
   double Lots3=   NormalizeDouble((LotsX-Lots1-Lots2)*CloseX3/100,2);
      for(int i=OrdersTotal()-1; i>=0; i--)
      {
         if(OrderSelect(i,SELECT_BY_POS))
            if(OrderMagicNumber()==MagicX)
            {
               if(OrderType()==OP_SELL)
               {
                  if(OrderOpenPrice()-Ask>ProfitX3*Point && ProfitX3>0)
                  {
                     if(OrderLots()==LotsX-Lots1-Lots2)
                        if(!OrderClose(OrderTicket(),Lots3,OrderClosePrice(),0,Blue))
                           Print("OrderClose() error - ",GetLastError());
                  }
                  else
                     if(OrderOpenPrice()-Ask>ProfitX2*Point && ProfitX2>0)
                     {
                        if(OrderLots()==LotsX-Lots1)
                           if(!OrderClose(OrderTicket(),Lots2,OrderClosePrice(),0,Blue))
                              Print("OrderClose() error - ",GetLastError());
                     }
                     else
                        if(OrderOpenPrice()-Ask>ProfitX1*Point && ProfitX1>0)
                        {
                           if(OrderLots()==LotsX)
                              if(!OrderClose(OrderTicket(),Lots1,OrderClosePrice(),0,Blue))
                                 Print("OrderClose() error - ",GetLastError());
                        }

               }

               else
                  if(OrderType()==OP_BUY)
                  {
                     if(Bid-OrderOpenPrice()>ProfitX3*Point && ProfitX3>0)
                     {
                        if(OrderLots()==LotsX-Lots1-Lots2)
                           if(!OrderClose(OrderTicket(),Lots3,OrderClosePrice(),0,Red))
                              Print("OrderClose() error - ",GetLastError());
                     }
                     else
                        if(Bid-OrderOpenPrice()>ProfitX2*Point&& ProfitX2>0)
                        {
                           if(OrderLots()==LotsX-Lots1)
                              if(!OrderClose(OrderTicket(),Lots2,OrderClosePrice(),0,Red))
                                 Print("OrderClose() error - ",GetLastError());
                        }
                        else
                           if(Bid-OrderOpenPrice()>ProfitX1*Point && ProfitX1>0)

                           {
                              Comment("盈利大于",ProfitX1,"点");
                              if(OrderLots()==LotsX)
                                 if(!OrderClose(OrderTicket(),Lots1,OrderClosePrice(),0,Red))
                                    Print("OrderClose() error - ",GetLastError());
                           }
                  }

            }
      }


}



daerbushen 发表于 2022-12-26 21:39:48

三阶盈利减仓

祺实卟冷 发表于 2023-4-18 15:58:01

学习三阶盈利减仓

ken138888 发表于 2023-4-19 14:05:37

厉害这样也可以

daerwushen 发表于 2023-4-26 07:57:49

分批出场

海盗船 发表于 2023-4-27 00:15:56

可以学习一下啊!

tststs 发表于 2023-5-16 12:02:52

学习了,咔咔咔

guoshouying 发表于 2023-9-15 02:02:01

感谢分享 支付了H币 能详细点刘更好

fx8 发表于 2025-2-23 12:52:28

zhe caishi 真的好东西

dyt20 发表于 2025-2-25 18:17:00

你的EA的魔术码

过去了 发表于 2025-3-7 11:21:22

这个源码可以学习!感谢分享。

xinhua123 发表于 2025-3-8 00:08:04

很好 学习了

zunshoujilv 发表于 2025-3-9 04:32:36

厉害的程序
页: [1]
查看完整版本: ProfitClosePart3()三阶盈利减仓,可以分三次对盈利订单进行减仓,分批出场