在由MQL5向导生成的专家顾问中打开、关闭 - 页 3

 

你能告诉我SignalITF最终返回什么值吗?你能告诉我empty_value 是什么意思吗?

 
PeretsCHILI:

你能告诉我SignalITF最终返回什么值吗?你能向我这个不聪明的人解释一下empty_value 是什么意思吗?


我都记不清楚了,到目前为止,我找到了这个。

日内时间过滤信号

 

这个模块似乎有一个稍微不同的逻辑,首先它的工作是返回 "反对 "和 "不反对 "开仓,然后计算其他信号模块的信号的算术平均值出来。

 
Andy:

如果多头和空头信号都是100,则收盘。


看看你的信号生成器:模式的权重是什么?

(类似这样的情况。

//+------------------------------------------------------------------+
//| Constructor                                                      |
//+------------------------------------------------------------------+
CSignalDEMA::CSignalDEMA(void) : m_ma_period(12),
                                 m_ma_shift(0),
                                 m_ma_applied(PRICE_CLOSE),
                                 m_pattern_0(20),
                                 m_pattern_1(60),
                                 m_pattern_2(80),
                                 m_pattern_3(60)
  {

)

 
Andy:

我只是在买入和卖出条件下都有一个信号=100。只有一个条件:牛栏>30点 - 买入,看跌 - 卖出。


因此,不要发放100个,而是发放80个。在这种情况下,你可以在你的EA中设置关闭[0...100]的信号阈值等于100,并禁止关闭。

 
Andy:

...

顺便问一句--我怎样才能使标准仓位跟踪模块只在盈亏平衡处设置止损,而不进一步跟踪?

...


你需要编写你自己的职位管理模块。阅读全文:MQL5向导:如何创建你自己的模块来支持开放的位置


这两个EA之间的区别是什么

...

我是否也可以在趋势反转期间进行简单的平仓,而不打开相反的仓位?

是的,你可以。你需要继承自CExpert,并在产生的类中编写你自己的规则。
 
Andy:

当使用您指定的模块时,在图表上加载专家顾问时,专家顾问日志中会显示错误。

2017.09.06 00:28:29.873 1 (EURUSD,M5) OnInit:初始化指标错误

2017.09.06 00:31:20.256 1 (EURUSD,M5) CExpertBase::SetPriceSeries: 更改时间序列是禁止的

2017.09.06 00:31:20.256 1 (EURUSD,M5) CExpertBase::SetOtherSeries: 更改时间序列是禁止的

2017.09.06 00:31:20.256 1 (EURUSD,M5) CExpertBase::InitIndicators: 设定的参数未被检查

2017.09.06 00:31:20.256 1 (EURUSD,M5) CExpert::InitIndicators: 错误初始化拖曳对象的指标

2017.09.06 00:31:20.256 1 (EURUSD,M5) OnInit:初始化指标错误

也许它已经过时了,我在哪里可以得到一个新的,或者我应该在这个中修复什么?

为了获得答案,请使用帖子的TITTING。

尊重与你交谈的人

 
Andy:

当使用您指定的模块时,在图表上加载专家顾问时,专家顾问日志中会显示错误。

2017.09.06 00:28:29.873 1 (EURUSD,M5) OnInit:初始化指标错误

2017.09.06 00:31:20.256 1 (EURUSD,M5) CExpertBase::SetPriceSeries: 更改时间序列是禁止的

2017.09.06 00:31:20.256 1 (EURUSD,M5) CExpertBase::SetOtherSeries: 更改时间序列是禁止的

2017.09.06 00:31:20.256 1 (EURUSD,M5) CExpertBase::InitIndicators: 设定的参数未被检查

2017.09.06 00:31:20.256 1 (EURUSD,M5) CExpert::InitIndicators: 错误初始化拖曳对象的指标

2017.09.06 00:31:20.256 1 (EURUSD,M5) OnInit:初始化指标错误

也许它已经过期了,在哪里可以得到一个新的,或者在这个新的中修复什么?

我在这篇文章的讨论中作了回答。

关于交易、自动交易系统和策略测试器的论坛

讨论文章《MQL5向导:如何编写自己的开仓维护模块》。

Vladimir Karputov, 2017.09.06 07:26


修改 尾随模块 "sampleTrailing.mqh"。

//+------------------------------------------------------------------+
//| Проверка параметров настройки.                                   |
//| INPUT:  нет.                                                     |
//| OUTPUT: true-если настройки правильные, иначе false.             |
//| REMARK: нет.                                                     |
//+------------------------------------------------------------------+
bool CSampleTrailing::ValidationSettings()
  {
   if(!CExpertTrailing::ValidationSettings())
      return(false);
//--- а вдруг не вызывался метод Init
   if(m_symbol==NULL) return(false);
//--- проверка параметров
   if((m_profit-m_stop_level)*m_adjusted_point<=m_symbol.StopsLevel()*m_symbol.Point() && m_profit!=0.0)
     {
      printf(__FUNCTION__+": уровень пороговой прибыли должен быть больше уровня установки ордеров");
      return(false);
     }
//--- ok
   return(true);
  }

 
Andy:

而在标准的MA和RSI信号模块中,如何确定那一刻的信号强度是多少

***


作为一个用户,你确定你需要它吗?


安迪

***

开仓和平仓 应该设置什么值?


通过实验选择打开和关闭的级别。

Signal threshold value to open [0...100]
Signal threshold value to close [0...100]


以及输入参数中的权重值

Moving Average(12,0,...) Weight [0...1.0]
Relative Strength Index(8,...) Weight [0...1.0]


也就是说,所有的东西都是为每个个案(符号和时间框架)通过实验挑选的。

 
Andy:
而在MA模块中,打开和关闭的信号强度是多少(我需要它与另一个模块结合)?

看一下MovingAverage自定义指标 信号模块(Expert\Signal\SignalMA.mqh)的代码,在构造函数中。