[Arquivo!] Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por ela. Não poderia ir a lugar algum sem você - 2. - página 350

 

Como memorizar minha barra de índice? Quando novas barras aparecem, o índice muda. Por exemplo: uma travessia de onda ocorreu, a próxima barra será uma barra zero. Preciso memorizar o valor da onda nesta barra e usá-la nos cálculos dos indicadores nas seguintes barras. Como inicializo este índice? Ou como fazer isso ?

 
david2:

Como memorizar uma barra de índice?

 datetime Time_bar;// в глобальных переменных


//запоминаем бар по времени открытия
 if(...пересечение машек...) Time_bar=Time[0];
 

// определяем индекс бара в любой момент
int bar=-1;
for(int i=0;i<1000;i++){
    if(Time[i]==Time_bar) { bar=i;break; }                   
                        }
 
KONDOR:

Muito obrigado, vou tentar dessa forma.
 
Você sabe se existe um tradutor de C ou C++ para MQL4? Quero dizer, seria mais conveniente para mim escrevê-lo em C e depois traduzi-lo?
 
-xlapex-:

Tentei isto, o resultado é o mesmo - zero.

int start() {

int mas2[10][2],min_1,min_2,min_V1,min_V2;


for(int i=1;i<Q_Bars;i++)
{
min_1 =ArrayMinimum(Volume, Q_Bars,1); //определяем индекс бара с минимальным объемом
min_V1=iVolume(0,0,min_1); //величина этого объема

mas2[i,0]=Volume[i]; //заполняем 1-ю часть двумерного массива объемами
mas2[i,1]=i; //вторую часть - соответствующими им индексами
}
ArraySort(mas2); //сортируем по величине объемов
min_V2=mas2[2,0]; //определяем второй после минимального объем
min_2=mas2[2,1]; //соответствующий ему индекс бара

H1= NormalizeDouble(High[min_2],4); //нормализуем level по знакам после запятой
create_line("", H1, Ex_col_2, 0, 2); //пытаемся нарисовать линию

return(0); //Bывод: ничего не рисуется, что еще ему надо - ????
}
//--------------------------------------------------------------------
void create_line(string name_line,double level,color c,int style,int w)
{
ObjectCreate(name_line, OBJ_HLINE, 0, 0,0);
ObjectSet(name_line, OBJPROP_PRICE1, level);
ObjectSet(name_line, OBJPROP_COLOR, c);
ObjectSet(name_line, OBJPROP_STYLE, style);
ObjectSet(name_line, OBJPROP_WIDTH, w);

}



E por que o nome do objeto está vazio? Escreva algo: "Object_name " ao invés de "" quando chamar create_line("", H1, Ex_col_2, 0, 2 );


 
artmedia70:

Obrigado, eu já fiz de tudo.
 

GBPUSD não abre

int start()
{
OrderSend("GBPUSD",OP_SELL,0.1,Ask,0,Ask+400*Point,Ask-100*Point);
Alert GetLastError();
return()

}

e na compilação gera erros relacionados ao Alert GetLastError();

Será que os 100 pontos do corretor estão muito próximos (5 dígitos no corretor)?

 
Danil93:

GBPUSD não abre

int start()
{
OrderSend("GBPUSD",OP_SELL,0.1,Ask,0,Ask+400*Point,Ask-100*Point);
Alerta GetLastError();
retorno();

}

e em tempo de compilação recebo erros relacionados ao Alert GetLastError();

Será que os 100 pips do corretor estão muito próximos (5 dígitos no corretor)?


Talvez, porque a 4 dígitos são apenas 10ppt. Coloque pelo menos 101 em vez de 100 e verifique.
 
Olá a todos. Você pode me dizer se o testador leva em conta as trocas? Porque meus lucros em alguns pares estão derretendo de forma suspeita (especialmente em comércios que estão se arrastando por muito tempo).
 
Danil93:

GBPUSD não abre


e ao compilá-lo escreve erros relacionados ao Alert GetLastError();

poderia ser que os 100 pips do corretor estejam muito próximos (5 dígitos no corretor)?


int start()
{
  OrderSend("GBPUSD",OP_SELL,0.1,Ask,0,Ask+400*Point,Ask-100*Point);
  Alert(GetLastError());
  return();

}