Domande da un "manichino" - pagina 265

 
DC2008:

Guarda la mia versione:

Su un portatile - tutto vola!

Guarda qui. Grazie!
 
Come posso sapere che TRADE_RETCODE_MARKET_CLOSED (il mercato è chiuso) per il simbolo specificato senza inviare un ordine di compravendita al server?
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Типы торговых операций
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Типы торговых операций
  • www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Типы торговых операций - Документация по MQL5
 
joo:
Come posso sapere che TRADE_RETCODE_MARKET_CLOSED (il mercato è chiuso) per un determinato simbolo senza inviare un ordine di compravendita al server?

https://www.mql5.com/ru/docs/marketinformation/symbolinfointeger?
Документация по MQL5: Получение рыночной информации / SymbolInfoInteger
Документация по MQL5: Получение рыночной информации / SymbolInfoInteger
  • www.mql5.com
Получение рыночной информации / SymbolInfoInteger - Документация по MQL5
 
Puoi ottenere il tempo della sessione di trading SymbolInfoSessionTrade
Документация по MQL5: Получение рыночной информации / SymbolInfoSessionQuote
Документация по MQL5: Получение рыночной информации / SymbolInfoSessionQuote
  • www.mql5.com
Получение рыночной информации / SymbolInfoSessionQuote - Документация по MQL5
 

Ho ordinato un Expert Advisor che lavora sulla base del posizionamento delle tre MA: se Fast > Medium > Slow, allora compro con doppio volume per invertire la posizione. Se il rapporto è invertito, vendiamo con un'inversione. L'Esecutore ha fatto un modello. Quando lo provo, vedo che ogni inversione di posizione è implementata da tre accordi di inversione. Qualcuno può suggerire qual è il problema qui?

Screenshot della piattaforma MetaTrader

EURUSD, M5, 2013.07.14

Nord Group Investments Inc., MetaTrader 5, Demo

temp_file_screenshot_34063.png

EURUSD, M5, 2013.07.14, Nord Group Investments Inc., MetaTrader 5, Demo


 
puttup:

Ho ordinato un Expert Advisor che lavora sulla base del posizionamento di tre MA: se Fast > Medium > Slow, allora compro con doppio volume per invertire la posizione. Se il rapporto è invertito, vendiamo con un'inversione. L'Esecutore ha fatto un modello. Quando lo provo, vedo che ogni inversione di posizione è implementata da tre accordi di inversione. Qualcuno può dirmi qual è la ragione?


vendere - il prezzo si è spostato in un'altra direzione - girare - il prezzo è tornato - girare di nuovo

Il grafico mostra il risultato finale, mentre la modalità in tempo reale mostra un quadro completamente diverso

 
lazarev-d-m:

vendere - il prezzo è andato dall'altra parte - girare - il prezzo è tornato - girare di nuovo

si può vedere il risultato finale sul grafico, ma in tempo reale è un quadro completamente diverso

...Il punto è che il rapporto tra il prezzo e il MA non influisce direttamente sulla performance delle operazioni. La correlazione dei valori delle medie mobili Fast>Average>Slow deve essere impostata nel programma e ricalcolata dopo la chiusura della barra successiva. Cioè, le fluttuazioni di spread del prezzo e persino il suo movimento all'interno di una barra non dovrebbero portare a transazioni. Quale potrebbe essere la colpa dell'esecutore?
 

L'EA funzionava senza errori, ha deciso di eseguire MT5 di nuovo oggi, ma ora quando si compila scrive:

Non può essere usato per l'array statico allocato

double UpVal[5];
double DnVal[5];
double ATRVal[5];

int OnInit()
{
  ResetLastError();
//-----
  Envelopes=iEnvelopes(Symbol(),TimeFrame,MAPeriod,0,MAMethod,MAPrice,Deviation);
  if(Envelopes==INVALID_HANDLE) Print("HandleError = ",_LastError);
//-----
  ATR=iATR(Symbol(),TimeFrame,ATRPeriod);
  if(ATR==INVALID_HANDLE) Print("HandleError = ",_LastError);
//-----
  return(0);
}
//+------------------------------------------------------------------+
  CopyBuffer(Envelopes,0,0,3,UpVal);
  ArraySetAsSeries(UpVal,true);
//-----
  CopyBuffer(Envelopes,1,0,3,DnVal);
  ArraySetAsSeries(DnVal,true);
//-----
  CopyBuffer(ATR,0,0,3,ATRVal);
  ArraySetAsSeries(ATRVal,true);
//+------------------------------------------------------------------+

Come posso liberarmene? Come posso liberarmene?

 
qual è il tasso di cambio dei crediti?
 
G001:

L'EA funzionava senza errori, ha deciso di eseguire MT5 di nuovo oggi, ma ora quando si compila scrive:

Non può essere usato per l'array statico allocato

Come posso liberarmene? Grazie.

Usare array dinamici o cambiare la dimensione degli array statici:

double UpVal[];
CopyBuffer(Envelopes,0,0,3,UpVal);
//+------------------------------------------------------------------+
double UpVal[3];
CopyBuffer(Envelopes,0,0,3,UpVal);
Документация по MQL5: Основы языка / Типы данных / Объект динамического массива
Документация по MQL5: Основы языка / Типы данных / Объект динамического массива
  • www.mql5.com
Основы языка / Типы данных / Объект динамического массива - Документация по MQL5