专家: MQL5 向导 - 基于 3 乌鸦/3 白兵 + Stochastic

 

MQL5 向导 - 基于 3 乌鸦/3 白兵 + Stochastic:

基于 "3 乌鸦/3 白兵" K 线形态的交易信号,考虑用 Stochastic (随机振荡)指标进行确认。基于此策略的交易程序代码,可由 MQL5 向导自动生成。

图例. 11. 交易程序的测试结果,基于 3 乌鸦/3 白兵 + Stochastic"

作者: MetaQuotes Software Corp.

 
您有该指标的 MT4 版本吗?
 

- 主模块的投票结果也用于 "投票 "平均。在本例中,我们有:主模块 + 1 个交易信号模块,因此在设置阈值时需要考虑到这一事实。因此,ThresholdOpen 和 ThresholdClose 必须分别设置为 40=(0+80)/2 和 20=(0+40)/2。-


这就犯了一个错误、

ThresholdOpen 和 ThresholdClose 应该设置为 80=(0+80)/1 和 40=(0+40)/1


 
您好!能给我点建议吗?我有一个估计的市场反转时间 if(TimeCurrent()==blok_1_time_1_1)。我该如何在我的函数中使用您的 3 匹马和 3 只乌鸦?我看了您的实现方法,但无法应用到自己身上。我想这样做:..."...if(3 WHITE && (rvi[0]>rvi[count-1])).... 非常感谢
//+------------------------------------------------------------------+
//| 搜索交易信号|
//+------------------------------------------------------------------+
bool SearchTradingSignals(void)
  {
   double rvi[];
   ArraySetAsSeries(rvi,true);
   int start_pos=m_bar_current,count=(InpRVIKinkLength<3)?3:InpRVIKinkLength;
   if(!iGetArray(handle_iRVI,InpRVILines,start_pos,count,rvi))
      return(false);

   int size_need_position=ArraySize(SPosition);
//--- 趋势上升
 if(m_prev_bars==m_last_deal_in)  return(true);ArrayResize(SPosition,size_need_position+1);SPosition[size_need_position].pos_type=POSITION_TYPE_BUY;
  //---------------------------------- FishingLake_1-----------------------------------------------
if(TimeCurrent()== blok_1_time_1_1) { if(rvi[0]>rvi[count-1]) 
 { int bar=-1;for(int i=1; i<count-1; i++) {if(rvi[i]<rvi[0] && rvi[i]<rvi[count-1]) bar=i;else {  bar=-1; break;}}if(bar==-1) return(true);}if(m_prev_bars==m_last_deal_in)  return(true);ArrayResize(SPosition,size_need_position+1);SPosition[size_need_position].pos_type=POSITION_TYPE_BUY;}
//--- 趋势向下
 //---------------------------------- FishingLake_1-----------------------------------------------
if(TimeCurrent()== blok_1_time_1_1) { if(rvi[0]<rvi[count-1])
 { int bar=-1; for(int i=1; i<count-1; i++) {if(rvi[i]>rvi[0] && rvi[i]>rvi[count-1]) bar=i;else{ bar=-1;  break; }} if(bar==-1)return(true);}if(m_prev_bars==m_last_deal_in)  return(true);ArrayResize(SPosition,size_need_position+1);SPosition[size_need_position].pos_type=POSITION_TYPE_SELL;}
   
//---
   return(true);