Funciones útiles de KimIV - página 112

 

A continuación se describen los errores de ejecución y las recomendaciones sobre cómo tratarlos. La recomendación general para los errores 2, 64, 65 y 133 es detener todos los intentos de negociación. Para aplicar esta recomendación, utilizo la variable global de EA gbDisabled, que defino en la cabecera (es decir, antes de que comiencen todas las funciones) de la siguiente manera:

//------- Глобальные переменные советника -------------------------------------+
bool   gbDisabled   = False;           // Флаг блокировки советника

Compruebo el estado de esta variable en la función start():

//+----------------------------------------------------------------------------+
//|  expert start function                                                     |
//+----------------------------------------------------------------------------+
void start() {
  if (gbDisabled) {
    Message("Критическая ошибка! Советник ОСТАНОВЛЕН!"); return;
  }
}
 
KimIV:

A continuación se describen los errores de ejecución y las recomendaciones sobre cómo tratarlos. La recomendación general para los errores 2, 64, 65 y 133 es detener todos los intentos de negociación. Para aplicar esta recomendación, utilizo la variable global de EA gbDisabled, que defino en la cabecera (es decir, antes de que comiencen todas las funciones) de la siguiente manera:

Compruebo el estado de esta variable en la función start():

Gracias.... )))
 
Buenas tardes, Igor En la función: void TrailingPositions(string sy="", int op=-1, int mn=-1) se pasa el control a la función ModifyOrder(sy, -1, pp+TrailingStopSell*p, 0, clModifySell), mientras que la propia ModifyOrder tiene 4 parámetros, ¿a qué se debe esto?
 
Lisi4ka330:
Buenos días, Igor! En la función: void TrailingPositions(string sy="", int op=-1, int mn=-1) el control se pasa a la función ModifyOrder(sy, -1, pp+TrailingStopSell*p, 0, clModifySell) mientras que la propia función ModifyOrder tiene 4 parámetros, ¿con qué está relacionado?

Probablemente sea porque has sacado la función TrailingPositions de algún sitio. Tal vez de uno de mis antiguos EAs. Las funciones que he publicado no se convirtieron en eso de inmediato. Han evolucionado.

Por favor, facilítame el enlace a la función TrailingPositions . No se encuentra en mi lista de publicados. He publicadoSimpleTrailing().

 
aquí : http://www.kimiv.ru/index.php?option=com_remository&Itemid=13&func=fileinfo&id=20 Y gracias por el enlace, me costó mucho recordar dónde lo vi, pero no lo encontré)))))
 
Ya veo... Ya debe haber notado que el parámetro que pasa el nombre del símbolo comercial a la función ModifyOrder() es redundante. Antes había este parámetro, y luego lo eliminé...
 
Sí, lo he descubierto )))) E incluso escribí mi primer EA, e incluso, como resultó, con un pequeño beneficio)))))))))))) Muchas gracias Igor, sólo tus características lo hicieron posible para mí))))))))))))))))
 
Buenas tardes!!!)))) Por favor, explique la función Fibonacci(), ¿en qué casos se utiliza? No está claro qué tipo de elemento devuelve... no es el precio del nivel...
 

Hola, ¿por casualidad tienen una función que permita establecer niveles de take y stop en variables externas al establecer una orden?

Por ejemplo:

extern double sl = 0; // SL для открываемого ордера

extern double tp = 0; // ТР для открываемого ордера

SetOrder("", OP_BUY, ll, Ask, SL(), TP(), 0, 0);
{условие}

SetOrder("", OP_SELL, ll, Bid, SL(), TP(), 0, 0);

{условие}

SetOrder("", OP_BUYSTOP, ll, Ask, SL(), TP(), 0, 0);
{условие}

SetOrder("", OP_SELLSTOP, ll, Bid, SL(), TP(), 0, 0);

{условие}

SetOrder("", OP_BUYLIMIT, ll, Ask, SL(), TP(), 0, 0);
{условие}

SetOrder("", OP_SELLLIMIT, ll, Bid, SL(), TP(), 0, 0);

{условие}


 


¡Hola!

Por alguna razón cuando conecto tu librería el operador extern deja de funcionar, es decir, las variables se definen, todo compila normalmente, y en principio el EA funciona, pero al mismo tiempo el EA no tiene parámetros al iniciar el tipo, a pesar de que hay bastantes parámetros. ¿Cuál puede ser la razón de esto?

Razón de la queja: