¿cómo probar? tengo error sobre la cobertura en USD/EUR
2018.05.12 21:13:01.827 Core 1 1971.05.26 00:00:00 ¡Sólo cobertura!
2018.05.12 21:13:01.827 Core 1 tester stopped because OnInit failed
¿cómo probar? tengo error sobre la cobertura en USD/EUR
2018.05.12 21:13:01.827 Core 1 1971.05.26 00:00:00 ¡Sólo cobertura!
2018.05.12 21:13:01.827 Core 1 tester se detuvo porque OnInit falló
Este asesor sólo puede funcionar en cuentas de trading con posiciones de un sistema contable de cobertura.
¿cómo probar? tengo error sobre la cobertura en USD/EUR
2018.05.12 21:13:01.827 Core 1 1971.05.26 00:00:00 ¡Sólo cobertura!
2018.05.12 21:13:01.827 Core 1 tester se detuvo porque OnInit falló
ten en cuenta que al iniciar valida si tu tipo de cuenta es de cobertura, de lo contrario devuelve un error de inicialización.
Puedes eliminar este trozo de código, pero va en contra de la idea del autor. O abrir una cuenta de cobertura, al abrirla debes marcar esta opción, todas las cuentas nuevas nacen como de cobertura por defecto.
la sección que valida tu cuenta es:
int OnInit() { SetMarginMode(); if(!IsHedging()) { Print("Hedging only!"); return(INIT_FAILED); } ... }
referencias:
https://www.mql5.com/es/docs/constants/environment_state/accountinformation
https://www.mql5.com/pt/forum/91033
Attn,
Jonathan Pereira

- www.mql5.com
Código
//+------------------------------------------------------------------+ //| Función TradeTransaction| //+------------------------------------------------------------------+ void OnTradeTransaction ( const MqlTradeTransaction &trans, const MqlTradeRequest &request, const MqlTradeResult &result) { //--- obtener el tipo de transacción como valor de enumeración ENUM_TRADE_TRANSACTION_TYPE type=trans.type; //--- si la transacción es el resultado de la adición de la transacción en la historia if (type== TRADE_TRANSACTION_DEAL_ADD ) { long deal_entry = 0 ; double deal_profit = 0.0 ; string deal_symbol = "" ; long deal_magic = 0 ; if ( HistoryDealSelect (trans.deal)) { deal_entry= HistoryDealGetInteger (trans.deal, DEAL_ENTRY ); deal_profit= HistoryDealGetDouble (trans.deal, DEAL_PROFIT ); deal_symbol= HistoryDealGetString (trans.deal, DEAL_SYMBOL ); deal_magic= HistoryDealGetInteger (trans.deal, DEAL_MAGIC ); } else return ; if (deal_symbol== Symbol () && deal_magic==m_magic) if (deal_entry== DEAL_ENTRY_OUT ) { if (deal_profit> 0 ) lot_last=InpLot; else { lot_last=InpLot* 1.6 ; lot_last=LotCheck(lot_last); } } } }
significa:
Si realizamos una operación OUT (Fuera del Mercado) y el beneficio de una operación es negativo, aumentamos el "объем" en 1,6.
Confirmando,
Comprar => cierre de la barra 3 > cierre de la barra 2 y cierre de la barra 2 > cierre de la barra 1
Vender => cierre de la barra 3 < cierre de la barra 2 y cierre de la barra 2 < cierre de la barra 1
La barra 1 es la actual, la barra 2 es la anterior y la barra 3 es la anterior a la barra 2
¿Es correcto? Gracias.
Извините, я не понимаю. Даже Goole Переводчик не помогает. Я не понимаю ни одного Вашего слова.

- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Usted acepta la política del sitio web y las condiciones de uso
E-Skoch-Open:
Autor: Vladimir Karputov