EATC

 找回密码
 立即注册
查看: 506|回复: 2

盈利30点将止损提高到盈利15点处(平保)

[复制链接]

279

主题

1921

帖子

1079

积分

客服

Rank: 7Rank: 7Rank: 7

积分
1079
发表于 2022-12-5 12:48:07 | 显示全部楼层 |阅读模式

盈利30点将止损提高到盈利15点处。

这种操作,有时候也叫平保,为了避免将盈利的单子变亏损了所做的一个保护。这种操作非常有用,很多人都会用到,通过编写ea来实现这种功能,非常简单,短短几十行代码就能实现。

下面是这个程序的全部代码,感兴趣可以复制下去保存为EA就可以运行。

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

//|                               盈利30点将止损提高到盈利15点处.mq4 |

//|                                                             云开 |

//|                                             https://www.mql5.com |

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

#property copyright "云开"

#property link      "https://www.mql5.com"

#property version   "1.00"

#property strict

input int tratp=300;//盈利多少点

input int tp=150;//止损调高到盈利多少点

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

//| Expert initialization function                                   |

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

int OnInit()

  {

//---

//---

   return(INIT_SUCCEEDED);

  }

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

//| Expert deinitialization function                                 |

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

void OnDeinit(const int reason)

  {

//---

  }

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

//| Expert tick function                                             |

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

void OnTick()

  {

//---

   int total=OrdersTotal();

   for(int i=0; i<total; i++)

     {

      if(OrderSelect(i, SELECT_BY_POS))

        {

         if(OrderSymbol()==Symbol())

           {

            if(OrderType()==OP_BUY)

              {

               if(OrderStopLoss()<OrderOpenPrice()+tp*Point && OrderClosePrice()-OrderOpenPrice()>tratp*Point)

                 {

                  bool res=OrderModify(OrderTicket(), OrderOpenPrice(), OrderOpenPrice()+tp*Point, OrderTakeProfit(), 0);

                 }

              }

            if(OrderType()==OP_SELL)

              {

               if((OrderStopLoss()==0 || OrderStopLoss()>OrderOpenPrice()-tp*Point) && OrderOpenPrice()-OrderClosePrice()>tratp*Point)

                 {

                  bool res=OrderModify(OrderTicket(), OrderOpenPrice(), OrderOpenPrice()-tp*Point, OrderTakeProfit(), 0);

                 }

              }

           }

        }

     }

  }

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


回复

使用道具 举报

468

主题

1505

帖子

5037

积分

交易元老

Rank: 8Rank: 8

积分
5037
发表于 2024-1-7 10:17:25 | 显示全部楼层
分享的都值得点赞
回复

使用道具 举报

323

主题

1052

帖子

2018

积分

交易专家

Rank: 6Rank: 6

积分
2018
发表于 2024-3-5 10:16:42 | 显示全部楼层
楼主66666
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

收藏本站|法律声明|Archiver|小黑屋|support@ea198.com|EATC ( 桂ICP备2022005787号 )

风险提示与免责声明:擅自从事外汇保证金交易的双方不受法律保护!社区内展示内容,均为网友自发分享,不构成投资建议,社区无法全面监控由第三方上传至社区的资源,因此不保证资源的合法性、安全性、完整性、真实性或品质等。您下载时,同意自行判断并承担所有风险。社区内的资源,仅限用于学习和研究目的,不得将用于商业或者非法用途,否则,一切后果请用户自负。社区信息来自网络,版权争议与社区无关,您下载后须在24个小时之内进行删除。如果您喜欢该内容,请支持正版。如有侵权请邮件与我们联系处理。