任何菜鸟问题,为了不给论坛添乱。专业人士,不要路过。没有你就无处可去 - 6. - 页 488

 
有两个指标Ind_1和Ind_GV。Ind_GV指标与Ind_1不同的是,它从客户终端的全局变量 中接收其中一个设置值。
当Ind_1和Ind_GV设置匹配时,Ind_GV的结果值与Ind_1略有不同。
如果我在Ind_1和Ind_GV匹配时暂停测试器,并编译Ind_GV,则两个指标的结果值完全匹配。
谁知道这可以如何解释?
 

你能告诉我,在优化 模式下,我是否需要专家顾问中的任何代码来运行策略测试器?

我正在努力优化我的专家顾问,但我不知道是什么原因。


2014.02.18 21:54:30.386 Tester: 找到缓存文件 "C:\...\tester\cachestest.NZDUSD5.0",可以用于进一步优化。

2014.02.18 21:54:30.388 TestGenerator: 发现实际的tick文件 "C:\...\testerhistory\NZDUSD5_0.fxt"。

我们有历史。NZDUSD5_0.fxt文件重约150米。

你也可以在测试人员的日志中看到这一点

2014.02.18 22:50:21.251 TestGenerator: 未匹配的数据错误(在2014.02.12 13:35超过了体积限制305)。

这是什么情况?


 

请提供帮助!

每个变量都可以取1到5的值......告诉我如何不写3125个选项))))。

   if  (Kx==5&&     K>T &&     K>SA &&     K>SB &&     K>Bid &&
        Tx==4&&     T<K &&     T>SA &&     T>SB &&     T>Bid && 
        SAx==3&&    SA<K &&    SA<T &&     SA>SB &&    SA>Bid &&
        SBx==2&&    SB<K &&    SB<T &&     SB<SA &&    SB>Bid &&
        BID==1&&    Bid<K &&   Bid<T &&    Bid<SA &&   Bid<SB
       )
 
niktron:

请提供帮助!

每个变量都可以取1到5的值......告诉我如何不写3125个选项))))。

抽出25个选择,然后处理谁更大。
 
tara:
抽出25个选项,然后在之后处理谁更大的问题。

谢谢......这就是我现在要做的......我想用数组做,但我没有牵引力......)
 
最后有3125个选项,而不是25个......但把它分成25个选项也是一件事))。
 
直接写下你的意见,它们会在事后有所帮助。
 
去了一个女人。
 

请帮助解决带有".mqh "附件的指标。

指标缓冲区ExtBuffer1[]、ExtBuffer2[]和Buffer_M[]的大小为0。 同时,缓冲区ExtBuffer0[]工作正常,其大小等于Bars,应该是这样。最有趣的是,在更新到新版本的MT4之前,它在旧版本的MT4中运行良好。还有一件事。如果我把一个指标的所有元素移到同一个基本的mq4文件中,一切又都能正常工作。

问题:为什么附件中指标缓冲区的数组大小 会被重置为0?

以下是该指标的源代码。

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

//| AO_EMA_(with_includes).mq4 |

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

#include <AO_EMA_(with_includes)_GLOB.mqh>

//--------------------------------------------

int init()

{

#include <AO_EMA_(with_includes)_INIT.mqh>

return(0);

}

//--------------------------------------------

int start()

{

#include <AO_EMA_(with_includes)_START.mqh>

return(0);

}

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





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

//| AO_EMA_(with_includes)_GLOB.mq4 |

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

#property indicator_separate_window

#property indicator_buffers 4

#property indicator_color1 Black

#property indicator_color2 Green

#property indicator_color3 Red


//---- Input Data

extern int Slow = 100;

extern double Slow_Fast = 4.318;

extern int Average = 25; // Усреднение АО

extern bool Show_AO_G = true,

Show_AO_R = true;


//---- Глобальные переменные

int Fast;

bool Alert_done = false; // Флаг говорит о том, что Alert уже был раз сгенерирован.

//---- indicator buffers

double ExtBuffer0[];

double ExtBuffer1[];

double ExtBuffer2[];

//---- Буфера индикатора, для промежуточных расчетов

double Buffer_M[];

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

//| AO_EMA_(with_includes)_INIT.mq4 |

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

//---- Установка значение для переменной "Fast"

Fast = NormalizeDouble(Slow / Slow_Fast, 0);


//---- indicator buffers mapping

SetIndexBuffer(0, ExtBuffer0);

SetIndexBuffer(1, ExtBuffer1);

SetIndexBuffer(2, ExtBuffer2);

SetIndexBuffer(3, Buffer_M);


//---- drawing settings

SetIndexStyle(0, DRAW_NONE); // Линия не рисуется

SetIndexStyle(1, DRAW_HISTOGRAM); // Гистограмма

SetIndexStyle(2, DRAW_HISTOGRAM); // Гистограмма

SetIndexStyle(3, DRAW_NONE); // Линия не рисуется

//---- drawing begin settings

SetIndexDrawBegin(0, Fast); // Индикатор начинает рисоваться с этого бара, от начала графика слева.

SetIndexDrawBegin(1, Fast);

SetIndexDrawBegin(2, Slow);

SetIndexDrawBegin(3, Slow);


IndicatorDigits(Digits+1);

//---- name for DataWindow and indicator subwindow label

IndicatorShortName("AO_EMA ("+Fast+"-"+Slow+")");

SetIndexLabel(1,"Green");

SetIndexLabel(2,"Red");

//---- Обнуляем буфер индикатора

SetIndexEmptyValue(0, 0.0); SetIndexEmptyValue(1, 0.0);

SetIndexEmptyValue(2, 0.0); SetIndexEmptyValue(3, 0.0);

//---- initialization done

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

//| AO_EMA_(with_includes)_START.mq4 |

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

int limit, pos;

int counted_bars=IndicatorCounted();

double prev,current, pr;

bool up;


//---- Последний посчитанный бар будет пересчитан

if(counted_bars>0) counted_bars--;

limit=Bars-counted_bars;

Print("counted_bars=",counted_bars," Bars=",Bars," limit=",limit);

Print("0=",ArraySize(ExtBuffer0)," 1=",ArraySize(ExtBuffer1)," 2=",ArraySize(ExtBuffer2)," M=",ArraySize(Buffer_M));


//---- Расчет MACD для Гистограммы "= EMA(fast) - EMA(slow)"

if(Show_AO_G == true || Show_AO_R == true)

{ for(int i=0; i<limit; i++)

Buffer_M[i]=iMA(NULL,0,Fast,0,MODE_EMA,PRICE_MEDIAN,i)-iMA(NULL,0,Slow,0,MODE_EMA,PRICE_MEDIAN,i);


//---- Усредняем MACD по "Average".Это и будет рисоваться на графике..

//---- ... можно заменить на " EMA(Fast)".

pr=2.0/(Average+1);

pos=Bars-2;

if(counted_bars>2) pos=Bars-counted_bars-1;

//---- Основной расчет

while(pos>=0)

{ if(pos==Bars-2) ExtBuffer0[pos+1]=Buffer_M[pos+1];

ExtBuffer0[pos]=Buffer_M[pos]*pr+ExtBuffer0[pos+1]*(1-pr);

pos--; }

//---- Расперделение данных между 2-я буферами, для разделения по цветам

for(i=limit-1; i>=0; i--)

{ // При перерасчете самого левого бара, порядковый номер в массиве [i+1] выходит за пределы размера массива, поэтому расчет первого цикла прорускаем.

if(i == Bars-1) continue;

//------------------------------------

current = ExtBuffer0[i];

prev = ExtBuffer0[i+1];

if(current == prev) continue;

else

{ if(current>prev) up=true;

if(current<prev) up=false;

if(!up)

{ ExtBuffer2[i]=current;

ExtBuffer1[i]=0.0; }

else

{ ExtBuffer1[i]=current;

ExtBuffer2[i]=0.0; }

}}}

//--- Устанавливаем видимость индикаторов

if(Show_AO_G == false) SetIndexStyle(1, DRAW_NONE);

if(Show_AO_R == false) SetIndexStyle(2, DRAW_NONE);

 
NEP:

请帮助解决带有".mqh "附件的指标。

指标缓冲区ExtBuffer1[]、ExtBuffer2[]和Buffer_M[]的大小为0。 同时,缓冲区ExtBuffer0[]工作正常,其大小等于Bars,应该是这样。最有趣的是,在更新到新版本的MT4之前,它在旧版本的MT4中运行良好。还有一件事。如果我把一个指标的所有元素移到同一个基本的mq4文件中,一切又都能正常工作。

问题:为什么附件中指标缓冲区的数组大小会被重置为0?

以下是该指标的源代码。




你喜欢在你的屁股上做事吗?