Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 1506

 
MakarFX:

Isto pode ajudar. Vou tentar adicioná-lo ao conselheiro.

 
Порт-моне тв:

O problema é que a porcentagem que eu quero definir, por exemplo (1%) muda numericamente e se

o resultado será que com cada novo comércio o BALANÇO também aumentará, assim como o 1% dele. Assim, minha função não funcionará, pois não há PONTO FIXO DO SET.

você tem um saldo no início do dia 1000, 1%=10

se o lucro durante o dia for 5, então o saldo - lucro = 1000 e 1% = 10

 
MakarFX:

OBRIGADO!!! FUNCIONOU PARA MIM!!!!!

 
Порт-моне тв:

OBRIGADO!!! FUNCIONOU PARA MIM!!!!!

De nada)
 
Порт-моне тв:

Eu calculei mal aqui, além do lucro/perda para o dia em que eu preciso do saldo da conta no início do dia. :(((( Ajuda))

Saldo da conta() - muda constantemente, como fixá-lo, por exemplo, em Hora==1 ?

Entendo que há muito que você pode não saber no idioma que está usando...

Mas, cara, não há como consultar esse maldito equilíbrio em ==1 e armazená-lo em uma variável separada?

 

Por favor, ajude a encontrar ou escreva uma função para pesquisar objetos em gráficos abertos.

Cinco gráficos abertos, a EA está no primeiro. MT4

 
MakarFX:

Por favor, ajude a encontrar ou escreva uma função para pesquisar objetos em gráficos abertos.

Cinco gráficos abertos, a EA está no primeiro. MT4

Makar não tem vergonha?

A busca de objetos na tabela não é uma função familiar? Você também não sabe como olhar através de todos os gráficos?

O primeiro parâmetro na função de busca de objetos é Chart_ID() - ele tem que ser alterado no loop do gráfico...

 
Alexey Viktorov:

Não é uma vergonha, Makar?

A busca de objetos em um gráfico não é uma função familiar? Você não sabe como pesquisar todos os gráficos?

O primeiro parâmetro na função de busca de objetos é Chart_ID() - ele deve ser alterado no loop do gráfico...

Esse é o meu problema com Chart_ID()

Eu o fiz desta maneira

   long currChart=ChartFirst();
   double pr;
   int vdigits;
   int i=0,limit=5; while(i<=limit)
     {
      if(ObjectFind(currChart,ChartSymbol(currChart)+" BUY")==0) 
        { 
         pr=ObjectGetDouble(currChart,ChartSymbol(currChart)+" BUY",OBJPROP_PRICE1);
         vdigits = (int)MarketInfo(ChartSymbol(currChart),MODE_DIGITS); 
         Print(ChartSymbol(currChart)," ",DoubleToStr(pr,vdigits));
        }else{Print(ChartSymbol(currChart),"0");}
      currChart=ChartNext(currChart);  i++;
     }

mas não serei capaz de verificar no testador(

...eu tenho que esperar tanto tempo por segunda-feira(

Durante a inicialização, tudo parece funcionar

2021.06.19 21:05:13.544 SymbolOfChart GBPUSD,M15: 4 GBPUSD 0
2021.06.19 21:05:13.544 SymbolOfChart GBPUSD,M15: 3 GBPJPY 154.124
2021.06.19 21:05:13.544 SymbolOfChart GBPUSD,M15: 2 USDCHF 0.92040
2021.06.19 21:05:13.544 SymbolOfChart GBPUSD,M15: 1 EURUSD 1.18887
2021.06.19 21:05:13.544 SymbolOfChart GBPUSD,M15: 0 GBPUSD 1.38646
2021.06.19 21:05:13.543 SymbolOfChart GBPUSD,M15: initialized

Mas como vai funcionar na vida real?

 
MakarFX:

Aqui está o meu problema com Chart_ID()

Fez assim

Mas você não pode verificá-lo no testador(.

...eu tenho que esperar tanto tempo por segunda-feira(

Durante a inicialização, tudo parece funcionar

Mas como vai funcionar na vida real?

O limite deve ser fixado em 100.

Pode haver 2 gráficos e pode haver 100, portanto pode não chegar ao próximo.

Você tem que fazer um overshoot em todos os abertos

 
Vitaly Muzichenko:

O limite precisa ser removido.

Pode haver 2 gráficos e pode haver 100, portanto pode não chegar ao próximo.

É preciso passar por todos os gráficos abertos.

Existe alguma maneira de determinar o número de gráficos abertos?

Razão: