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

 
Сергей:

Eu o entendo perfeitamente, mas você está errado.

Coloque vírgulas invertidas e você recebe:

EURUSD' - nome esperado MyIndi 3 (MA).mq4 61 14

Certo

E onde estão as citações aqui?

EURUSD'.

 
Artyom Trishkin:

Onde estão as vírgulas invertidas?


As aspas no meu código são duplas, no erro que recebo, não posso fazer nada a respeito.

Eu não tenho nenhum problema com a saída de dados para a janela. O problema está na saída errada. Em vez de "plano", diz "Atenção!" e vice-versa. O algoritmo é elementar, não tenho certeza de onde fiz asneira.

Eu também não tenho problemas com a compilação. Postar com o código #3437.

 

O próprio indicadorhttps://cloud.mail.ru/public/6Ney/gTq1xMcMd

Levantei aqui a questão dos gráficos JPY mudando os resultados

O indicador em questão está aquihttps://cloud.mail.ru/public/CAXu/p3uD3UzBJ . Eu não recebi nenhuma ajuda com minha pergunta então, você pode me ajudar agora?
 
Сергей:

Tenho aspas duplas em meu código, mas no erro recebo aspas simples, e não posso fazer nada a respeito.

Eu não tenho nenhum problema com a saída de dados para a janela. O problema é com os resultados errados. Em vez de "plano", diz "Atenção!" e vice-versa. O algoritmo é elementar, não tenho certeza de onde fiz asneira.

Eu também não tenho problemas com a compilação. Postar com o código #3437.

Para manter as pessoas adivinhando, e para poder entender corretamente do que você está falando, há todas as opções para isso no editor do correio em que você entra:

você pode anexar o código como um arquivo (há +Adicionar arquivo na parte inferior),

você pode emitir o código como um código,

por exemplo:

//+------------------------------------------------------------------+
//| Выводит в журнал список свечей серии                             |
//+------------------------------------------------------------------+
void CSeriesCollection::PrintListCandlesSeries(const uint num_candle)
  {
   int total=m_series.Total();
   ::Print("====== "+TextByLanguage("Список свечей тайм-серии","List of time series candles")+" ======");
   for(int i=0; i<total; i++){
      CCandleObject* candle=m_series.At(i);
      if(candle!=NULL){
         datetime time=candle.Time();
         if(time<TimeCurrent()-PeriodSeconds()*num_candle) continue;
         string tm=TimeToString(candle.Time());
         this.PrintCandle(candle);
         }
      }
   ::Print("====== "+TextByLanguage("Список свечей тайм-серии","List of time series candles")+" ======");
  }
//+------------------------------------------------------------------+

você também pode exibir a linha do log como um código (você pode copiá-la do log terminal e colá-la aqui como um código (botão SRC))

2017.10.20 04:04:09.014 Свеча NZDUSD 2017.10.20 00:00, open: 0.70296, high: 0.70360, low: 0.70260, close: 0.70355, vol tick: 87, размер: 100, тело: 59, верх. тень: 5, нижн. тень: 36, тип: Бычья

então as pessoas não terão um mal-entendido sobre o que você está falando.

E enviar pessoas para recursos de terceiros para baixar o não-saber-o-quê a partir deles - não é muito amigável, certo?

 
Сергей:
...

Também não há problema com a compilação. Postar com o código #3437.

Bem, você pode clicar em #3437, selecionar "Copy link" e colar o link em seu post (também no editor de posts) - para que as pessoas não tenham que navegar onde realmente não precisam ;)

 
Artyom Trishkin:

E encaminhar as pessoas para um recurso de terceiros para baixar o que quer que seja de lá não é muito amigável, não é mesmo?


Perdoe meu analfabetismo.


MyIndi 1 MultiValue em MultiTimeFrames. Na parte inferior, mostra o número de pontos de compra.

MyIndi 2 O mesmo que o primeiro, mas removeu dados desnecessários. Dados adicionados na parte inferior - esta é a variação média de preço por minuto para os diferentes períodos de tempo.

MyIndi 3 é multimoeda. É baseado em um único MA com um turno. Quando a diferença no MA é alcançada, ele mostra "Atenção!


Todos os três não funcionam corretamente quando anexados aos gráficos com JPY (por alguma razão). MyIndi 3 não funciona corretamente, embora o código seja muito simples.

E, claro, em todos eles não consigo encontrar o que está errado, pois sou novo nisso... Se alguém tiver tempo para descobrir e ajudar, eu ficaria muito grato.
Arquivos anexados:
MyIndi.mq4  54 kb
MyIndi_2.mq4  38 kb
 
Сергей:

Perdoe meu analfabetismo.


MyIndi 1 Multimoeda em MultiTimeFrames. Na parte inferior, mostra o número de pontos de compra.

MyIndi 2 O mesmo que o primeiro, mas removeu dados desnecessários. Dados adicionados na parte inferior - esta é a variação média de preço por minuto para os diferentes períodos de tempo.

MyIndi 3 é multimoeda. É baseado em um único MA com um turno. Quando a diferença no MA é alcançada, ele mostra "Atenção!


Todos os três não funcionam corretamente quando anexados aos gráficos com JPY (por alguma razão). MyIndi 3 não funciona corretamente, embora o código seja muito simples.

E é claro que não consigo encontrar o erro em todos eles, pois sou um novato neste assunto. Se alguém tiver tempo para entender e ajudar, ficarei muito grato.

Olhe para"Ponto", o JPY é diferente. Use MarketInfo. Por exemplo, o dobro EUR_point=MarketInfo("EURUSD",MODE_POINT);

 
Nauris Zukas:

Dê uma olhada em "Ponto", JPY é diferente. Use MarketInfo. Por exemplo, o dobro EUR_point=MarketInfo("EURUSD",MODE_POINT);

Obrigado, eu vou experimentar! Eu tinha uma idéia que era o problema, mas não sabia COMO.


Ajudou! Muito obrigado, gentil homem! =)

Eu acrescentei no início

      double USD_point=MarketInfo("EURUSD",MODE_POINT);
      double JPY_point=MarketInfo("USDJPY",MODE_POINT); 

e de acordo com que par eu processe (com ou sem JPY) utilizei uma ou outra variável.

 
Nauris Zukas:

Veja em Point, o JPY é diferente. Use MarketInfo. Por exemplo, o dobro EUR_point=MarketInfo("EURUSD",MODE_POINT);

É melhor ir imediatamente.

Point
SymbolInfoDouble(Symbol(),SYMBOL_POINT)
 
Vitaly Muzichenko:

Melhor de uma vez.


Penso que a variante proposta por@Nauris Zukas servirá para moedas múltiplas.

E sua variante é melhor para a moeda única, pois leva dados do gráfico ao qual está anexada.

Razão: