[Archivo!] Escribir un asesor de forma gratuita - página 25

 
for (int i=Bars-2; i>=0; i--)
{
 double dc=Close[ i]-Close[ i+1];
 if ( dc>=0) dc_D[ i]= dc; else dc_U[ i]=- dc;
 if ( mr==1) { U[ i]= mov( dc_U[ i], n, s);  D[ i]= mov( dc_D[ i], n, s); }
 if ( mr==2) { U[ i]= U[ i+1]*( n-1)+ dc_U[ i])/ n;  D[ i]= D[ i+1]*( n-1)+ dc_D[ i])/ n;  }
 if ( D[ i]!=0 && 1+ U[ i]/ D[ i]!=0)
 {
  if ( mru==1) MyRSI[ i]= mov(100/(1+ U[ i]/ D[ i]), n1, s); 
  if ( mru==2) MyRSI[ i]= mov(100/(1+ U[ i]/ D[ i]), n1, e);
 }
}

No estoy muy seguro de qué es mov. Me parece que es un cálculo de media móvil

dc_D,  dc_U, D, U, MyRSI - // это индикаторные буфера
 

Sí, U[i]=mov(dc_U[i], n, s) media móvil simple.

Entonces, resulta que aún no hemos llenado todas las matrices, pero ya nos referimos a ellas, ¿o no?

en esta línea?

si (mr==2) { U[i]=U[i+1]*(n-1)+dc_U[i])/n; D[i]=D[i+1]*(n-1)+dc_D[i])/n; }

 

Lo siento. ¿Puedo no tener un indicador, sino sólo código para insertar en un EA para obtener un valor?

 
Hola, podría escribir un EA para una estrategia sin indicadores, puedo describir todo en detalle, e incluso adjuntar una imagen si es necesario. Estoy deseando saber de usted. Incluso adjuntaré una foto si es necesario.
 
Gigabyte >>:
Здравствуйте, скажите, а Вы можете написать советника по без индикаторной стратегии, я могу подробно все описать, и даже картинку если надо прикреплю. Жду ответа. Спасибо.

leer el primer post de este hilo.

 
Hola, Muy buen Asesor Experto de 10 pips para EURUSD y GBPUSD, Rompiendo el máximo y el mínimo del día anterior, Puede ser ligeramente modificado, si abro BUYSTOP, EA abrirá una posición con H+spread+0.00003 puntos y si abro SELLSTOP, EA abrirá una posición con L-0.00003 puntos.


Ejemplo, al abrir una orden de compra: ticket=OrderSend(Symbol(),OP_BUYSTOP,Lot,H+Spred+Spred,0,H-SL+Spred+Spred,H+TP+Spred+Spred,NULL,MagicNumber,iTime( Symbol(), PERIOD_D1, 0 ) + 86400);-Datos existentes.

Cambiar a: ticket=OrderSend(Symbol(),OP_BUYSTOP,Lot,H+Spred+0.00003,0,H-SL+Spred+0.00003,H+TP+Spred+0.00003,NULL,MagicNumber,iTime( Symbol(), PERIOD_D1, 0 ) + 86400);-Datos modificados.

Ejemplo de apertura de una orden de venta:ticket=OrderSend(Symbol(),OP_SELLSTOP,Lot,L-Spred,0,L-Spred+SL,L-Spred-TP,NULL,MagicNumber,iTime( Symbol(), PERIOD_D1, 0 ) + 86400);-datos existentes.

Cambiar a:ticket=OrderSend(Symbol(),OP_SELLSTOP,Lot,L-0,00003,0,L-0,00003+SL,L-0,00003-TP,NULL,MagicNumber,iTime( Symbol(), PERIOD_D1, 0 ) + 86400);-datos cambiados

H - máximo del día anterior

L - mínimo del día anterior

0.00003 - número de puntos para MT4 con cotizaciones de cinco dígitos.( Y para cambiar siempre el número de puntos
Archivos adjuntos:
expertq10.mq4  5 kb
 
Si quiero conseguir una posición inversa en mi cuenta, en lugar de vender - comprar, en lugar de TP - SL, en lugar de SL - TP, con operaciones pendientes según el mismo esquema, estaré muy agradecido, pero dentro de unos límites razonables.
 
sigma_sura >>:
Господа программисты, знатоки MQL очень хочется копировщик сделок с реверсом, т.е. чтобы была возможность открывать противоположные образцовому счету ордера, очень пригодится для сливающих советников ну и всяких сливаторов, чтобы был полный переворот: например если сигнал на sell c TP и SL на образцовом счете, а на моем счете чтобы открывалась полностью обратная позиция вместо sell - buy, вместо TP - SL, вместо SL - TP, с отложенниками все по такой же схеме, буду очень признателен, но в разумных пределах.


Creo que Kim tiene uno, comprueba su página web.
 
Vinin >>:

А в какой зигзаг? а то их много.

Hola, Muy buen Asesor Experto de 10 pips para EURUSD y GBPUSD, Rompiendo el máximo y el mínimo del día anterior, Puede ser ligeramente modificado, si abro BUYSTOP, EA abrirá una posición con H+spread+0.00003 puntos y si abro SELLSTOP, EA abrirá una posición con L-0.00003 puntos.


Ejemplo, al abrir una orden de compra: ticket=OrderSend(Symbol(),OP_BUYSTOP,Lot,H+Spred+Spred,0,H-SL+Spred+Spred,H+TP+Spred+Spred,NULL,MagicNumber,iTime( Symbol(), PERIOD_D1, 0 ) + 86400);-Datos existentes.

Cambiar a: ticket=OrderSend(Symbol(),OP_BUYSTOP,Lot,H+Spred+0.00003,0,H-SL+Spred+0.00003,H+TP+Spred+0.00003,NULL,MagicNumber,iTime( Symbol(), PERIOD_D1, 0 ) + 86400);-Datos modificados.

Ejemplo de apertura de una orden de venta:ticket=OrderSend(Symbol(),OP_SELLSTOP,Lot,L-Spred,0,L-Spred+SL,L-Spred-TP,NULL,MagicNumber,iTime( Symbol(), PERIOD_D1, 0 ) + 86400);-datos existentes.

Cambiar a:ticket=OrderSend(Symbol(),OP_SELLSTOP,Lot,L-0,00003,0,L-0,00003+SL,L-0,00003-TP,NULL,MagicNumber,iTime( Symbol(), PERIOD_D1, 0 ) + 86400);-datos cambiados

H - máximo del día anterior

L - mínimo del día anterior

0.00003 - número de pips para MT4 con cotizaciones de cinco dígitos.( Y para cambiar siempre el número de pips

Archivos adjuntos:
expertu10.mq4  5 kb
 
vasilii8-85 >>:

¿Cuál es su problema? Has escrito lo que quieres cambiar (y cómo quieres cambiarlo:)). Todo lo que tienes que hacer es abrir el MetaEditor y arreglar el código. Para poder cambiar el número de puntos, haga lo siguiente

extern double delta=0.00003;//вставить перед start()
Y en cualquier lugar del código donde quieras poner 0,00003 escribe delta 
PS. Escribir la misma pregunta en varios temas no es bueno:)