Discussione sull’articolo "Expert Advisor basato sulle "New Trading Dimensions" di Bill Williams" - pagina 3

 
Vladimir Karputov:

Pulito e sistemato:


Versione "1.002" - ora gli errori "non ci sono soldi per aprire una posizione" sono molto meno:

File:
h_ts_bw.mqh  128 kb
 

Oh, fantastico! Grazie! Vediamo!

 

Ecco come appare (nel file allegato) il test dell'Expert Advisor nel terminale di un noto broker. Il trawl non funziona e, poiché il controllo dei margini non è previsto, le operazioni vengono aperte ma non chiuse fino alla fine del test, e poi è la fine.

Ma questo non accade in tutti i terminali, grazie a Dio! In quelli adeguati avviene correttamente.

Grazie per aver mantenuto aggiornato il codice dell'Expert Advisor!

File:
2017-08-13.png  116 kb
 
natyog:

Ecco come appare (nel file allegato) il test dell'Expert Advisor nel terminale di un noto broker. Il trawl non funziona e, poiché il controllo dei margini non è previsto, le operazioni vengono aperte ma non chiuse fino alla fine del test, e poi è la fine.

Ma questo non accade in tutti i terminali, grazie a Dio! In quelli adeguati avviene correttamente.

Grazie per aver mantenuto aggiornato il codice dell'Expert Advisor!


Modifica della posizione corretta: versione "1.003".

Modifiche apportate:

I prezzi di stop loss e take profit devono essere normalizzati utilizzando il metodo CSymbolInfo::NormalizePrice, non NormalizeDouble. Importante.


File:
h_ts_bw.mqh  129 kb
 

se si sostituisce la riga 422 if(exp_trade.PositionModify(m_Symbol,NormalizeDouble(StopLoss,s_info.Digits()),pos_info.TakeProfit()) nella versione "1.002" con

if(exp_trade.PositionModify(m_Symbol,s_info.NormalisePrice(StopLoss),pos_info.TakeProfit())

stessa immagine

File:
 
natyog:

se si sostituisce la riga 422 if(exp_trade.PositionModify(m_Symbol,NormalizeDouble(StopLoss,s_info.Digits()),pos_info.TakeProfit()) nella versione "1.002" con

if(exp_trade.PositionModify(m_Symbol,s_info.NormalisePrice(StopLoss),pos_info.TakeProfit())

stessa immagine


Abbiamo bisogno di screenshot da parte tua:

  1. Terminale - finestra"Strategy Tester" - scheda "Settings" (Impostazioni)
  2. Terminale - finestra "Strategy Tester" - scheda "Impostazioni".
  3. Tipo di conto di trading: netting o hedge
  4. Nome del server di trading a cui ci si connette.
  5. Allegare il file di log del tester.

 
natyog:

se si sostituisce la riga 422 if(exp_trade.PositionModify(m_Symbol,NormalizeDouble(StopLoss,s_info.Digits()),pos_info.TakeProfit()) nella versione "1.002" con

if(exp_trade.PositionModify(m_Symbol,s_info.NormalisePrice(StopLoss),pos_info.TakeProfit())

stessa immagine


Non basta "sostituire" qualcosa nel file "h_ts_bw.mqh". È necessario anche COMPILARE il file EA "tc_bw_new_version_2-02.mq5".

 

Beh, non è una cosa seria. Pensi davvero che non sia stato fatto!? Insultante.

Terminale RoboForex, conto di copertura.

 
natyog:
Beh, non sei serio. Pensi davvero che non sia stato fatto!? Insultante.

Si', fantastico. Quindi continueremo a cercare.

 
e rivista
File: