了解更多关于其他 "交易策略 "的信息 - 页 3

 
luenbo:

这种策略名为马丁格尔法,你最好在使用它时设置止损,否则你的账户迟早会被打破。

而且它通常适合于 波动市场。 如果你能把这个策略和趋势跟踪策略结合起来,它将给你带来更好的表现。

但要估计市场是平淡还是趋势,总是一件很困难的事情。

你能附上一个显示这种情况的EA吗?
 
Ubzen:

描述。UbzenA_20130725是一个放置随机交易的系统。当-点的数量超过布林线的点数时,会增加到负数交易。我认为它是一个黄牛党。包括一个使用实际存款货币$的止损,获利 也是实际货币$。我喜欢这样的交易量大小,因为你可以根据你的胃口,拨高或拨低侵略性。

  • -优点。有能力经受多年的测试和市场条件。
  • -缺点:不能快速致富。需要相对较大的投资资本。

对这个系统没有做任何优化。任何改进的建议,不管是积极的还是消极的(只是不要粗暴地对待它)。

  • 你的系统很有趣,我将仔细研究它。显然,5年内30%的利润不是很多,但这是你控制 缩减的唯一方法。
  • 为什么你认为它是一个黄牛党?在我看来,这不是一个黄牛党。
  • 为什么你在所有的订单上设置SL=0.00001和TP=9999999.00000?
 
angevoyageur:
  • 你的系统很有趣,我将仔细研究它。显然,5年内30%的利润不是很多,但这是你控制缩减的唯一方法。
  • 为什么你认为它是黄牛?在我看来,这不是一个黄牛党。
  • 为什么你在所有的订单上设置SL=0.00001,TP=9999999.00000?

1)我倾向于专注于平局。人们倾向于把我称为研磨者。与疯狂摇摆的不稳定曲线相比,我更喜欢缓慢不变的曲线。如果在0.01手的基础上抽出1500美元。对我来说,更容易想象在0.02的基础手数上会发生什么。

2)SysTkePftVal为5,有些版本是Pips。我想在这种情况下,它是5美元,所以看起来不大像是黄牛。然而,随着手数的增加,它在更大的手数上会表现得像黄牛。

3) 编程知识的缺乏(我猜)。当我开始使用mql5时,当试图发送sl和tp为零的订单时,它一直给我错误。这是我的方法。

 
Ubzen:

1)我倾向于专注于平局。人们往往把我称为研磨机。与疯狂摇摆的不稳定曲线相比,我更喜欢缓慢的恒定曲线。如果在0.01手的基础上抽出1500美元。对我来说,更容易想象在0.02的基础手数上会发生什么。

2)SysTkePftVal为5,有些版本是Pips。我想在这种情况下,它是5美元,所以看起来不大像是黄牛。然而,随着手数的增加,它在更大的手数上会表现得像黄牛。

3) 编程知识的缺乏(我猜)。当我开始使用mql5时,当试图发送sl和tp为零的订单时,它一直给我错误。这是我的方法。

我知道编码风格是个人偏好,但当你公开发布代码时,我想这是给其他人看的,所以我允许我有一些建议/评论。

  • 发表评论
  • 主要是如果你使用隐晦的(对其他)函数 名称(ClsSymSetPos, YesLstTrdWin, YesLstTrdWin...)。
  • 使用样式器(CTRL+,)来安排你的代码。
  • 代码行之间的空间是允许的。

什么是更可读的?

void SetTradePrices(ENUM_ORDER_TYPE Type,MqlTradeRequest& Trade){
    if(Type!=ORDER_TYPE_BUY && Type!=ORDER_TYPE_SELL){return;} double Price=0;
    if(Type==ORDER_TYPE_BUY){Price=SymbolInfoDouble(CurSetSymbol,SYMBOL_ASK);}
    if(Type==ORDER_TYPE_SELL){Price=SymbolInfoDouble(CurSetSymbol,SYMBOL_BID);}
    Trade.price=Price;//////////////////////////////////////////
    double  SymPoint=SymbolInfoDouble(CurSetSymbol,SYMBOL_POINT);
    if(Type==ORDER_TYPE_BUY){Trade.sl=SymPoint;  Trade.tp=999999999;}
    if(Type==ORDER_TYPE_SELL){Trade.tp=SymPoint; Trade.sl=999999999;}
}


void SetTradePrices(ENUM_ORDER_TYPE Type,MqlTradeRequest &Trade)
  {
   if(Type!=ORDER_TYPE_BUY && Type!=ORDER_TYPE_SELL)
      return;

   double Price=0;

   if(Type==ORDER_TYPE_BUY)
      Price=SymbolInfoDouble(CurSetSymbol,SYMBOL_ASK);

   if(Type==ORDER_TYPE_SELL)
      Price=SymbolInfoDouble(CurSetSymbol,SYMBOL_BID);

   Trade.price=Price;

   double  SymPoint=SymbolInfoDouble(CurSetSymbol,SYMBOL_POINT);

   if(Type==ORDER_TYPE_BUY)
     {
      Trade.sl=SymPoint;  Trade.tp=999999999;
     }
   if(Type==ORDER_TYPE_SELL)
     {
      Trade.tp=SymPoint; Trade.sl=999999999;
     }
  }
 

由于你在前面的函数中只处理了买入和卖出订单,你可以在mql5中使用这个语法。

void SetTradePrices(ENUM_ORDER_TYPE Type,MqlTradeRequest &Trade)
  {
   if(Type!=ORDER_TYPE_BUY && Type!=ORDER_TYPE_SELL)
      return;

   double SymPoint=SymbolInfoDouble(CurSetSymbol,SYMBOL_POINT);

   Trade.price    =SymbolInfoDouble(CurSetSymbol,Type==ORDER_TYPE_SELL ? SYMBOL_BID : SYMBOL_ASK);
   Trade.sl       =Type==ORDER_TYPE_BUY  ? SymPoint : 999999999;
   Trade.tp       =Type==ORDER_TYPE_BUY  ? 999999999 : SymPoint;
  }
 
angevoyageur:

我知道编码风格是个人偏好,但当你公开发布代码时,我想这是给其他人看的,所以我允许我提出一些建议/评论。

  • 发表评论
  • 主要是如果你使用隐晦的(对其他)函数名称(ClsSymSetPos, YesLstTrdWin, YesLstTrdWin...)。
  • 使用样式器(CTRL+,)来安排你的代码。
  • 代码行之间的空间是允许的。

什么是更可读的?


谢谢你的建议。我更愿意为那些想了解代码的人解释。显然,我的风格对我来说更容易理解。在你上面的帖子中,你使用了两种不同的括号样式。我只是想知道为什么?

   if(Type==ORDER_TYPE_BUY)
     {
      Trade.sl=SymPoint;  Trade.tp=999999999;
     }

vs

   if(Type==ORDER_TYPE_BUY)
      Price=SymbolInfoDouble(CurSetSymbol,SYMBOL_ASK);

这些都是我必须要处理的问题类型。有些人喜欢括号......有些人讨厌它。有些人喜欢逐行注释......。我就讨厌它。我更愿意在每个函数 的标题下看到描述。在我看来,对于大多数人不会去修改的东西,会产生很多工作。对于那些感兴趣的人,我很愿意解释。

 
angevoyageur: 由于你在前面的函数中只处理买入和卖出订单,你可以在mql5中使用这个语法。
很好,谢谢。
 
Ubzen:

谢谢你的建议。我更愿意为那些想了解代码的人解释。显然,我的风格对我来说更容易理解。在你上面的帖子中,你使用了两种不同的括号样式。我只是想知道为什么?

vs

这些都是我必须要处理的问题类型。有些人喜欢括号......有些人讨厌它。有些人喜欢逐行注释......。我就讨厌它。我更愿意在每个函数的标题下看到描述。在我看来,对于大多数人不会去修改的东西,会产生很多工作。对于那些感兴趣的人,我很愿意解释。

第一个括号是强制性的,因为当条件为真时必须执行两条指令。对于第二种情况,它们不是强制性的(1条指令),但添加括号当然也是没有问题的。
 
angevoyageur: 第一个括号是强制性的,因为当条件为真时必须执行两条指令。对于第二条,它们不是强制性的(1条指令),但添加括号当然也是没有问题的。

是的,这是正确的。我总是用if(){;}开始,就不用担心了 :P ...再次感谢。

ps> 你的代码中的白色空格让我头疼不已。

 

平均进场总是可以的,当你有巨大的手数并想退出时,可能没有成交量 让你在你想要的价格退出。

当新闻发布时,我不知道这个系统是否能像现在的审计一样生存。

Documentation on MQL5: Standard Constants, Enumerations and Structures / Chart Constants / Chart Representation
Documentation on MQL5: Standard Constants, Enumerations and Structures / Chart Constants / Chart Representation
  • www.mql5.com
Standard Constants, Enumerations and Structures / Chart Constants / Chart Representation - Documentation on MQL5