[¡AVISO CERRADO!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen. No puedo ir a ningún sitio sin ti. - página 61
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Estimados expertos, por favor, respondan a la pregunta:
MetaEditor dispone de archivos de texto de plantillas de creación de programas. Son utilizados por el asistente al crear un programa. En el texto de la plantilla se especifican los parámetros del tipo de archivo de programa creado. Hay etiquetas entre los parámetros que no se muestran en el texto del código. Pero el terminal los reconoce de alguna manera. Si se crea un Asesor Experto, la función de Inicio se lanza después del siguiente tick. Si se crea un indicador, la función de Inicio se lanza sin un tick. ¿Dónde van las etiquetas y todo lo que contienen?
Hice dos pruebas más para ver de dónde viene todo:
1. Leo del ini no en un array de cadenas, sino en variables separadas. El resultado es el esperado, es decir, la copia no es un valor sino una referencia:
el resultado obtenido:
2009.04.10 14:31:42 example AUDUSD,H4: init.4: Cross_3=USDJPY
2009.04.10 14:31:42 example AUDUSD,H4: init.4: Cross_2=GBPUSD
2009.04.10 14:31:42 example AUDUSD,H4: init.4: Cross_1=EURUSD
2009.04.10 14:31:42 example AUDUSD,H4: init.3: read complete
2009.04.10 14:31:42 example AUDUSD,H4: init.3: Cross_3=USDJPY
2009.04.10 14:31:42 example AUDUSD,H4: init.3: Cross_2=GBPUSD
2009.04.10 14:31:42 example AUDUSD,H4: init.3: Cross_1=EURUSD
2009.04.10 14:31:42 example AUDUSD,H4: -------------------------------
2009.04.10 14:31:42 example AUDUSD,H4: init.2: Cross_3=USDJPY
2009.04.10 14:31:42 example AUDUSD,H4: init.2: Cross_2=USDJPY
2009.04.10 14:31:42 example AUDUSD,H4: init.2: Cross_1=USDJPY
2009.04.10 14:31:42 example AUDUSD,H4: init.1: read complete
2009.04.10 14:31:42 example AUDUSD,H4: init.1: Cross_3=USDJPY
2009.04.10 14:31:42 example AUDUSD,H4: init.1: Cross_2=GBPUSD
2009.04.10 14:31:42 example AUDUSD,H4: init.1: Cross_1=EURUSD
2. devuelve la matriz de cadena, pero en lugar de la función de lectura de los valores de la cadena ini
usó una función de prueba, que no llama a nada de la api de win
resultado
2009.04.10 14:41:12 ejemplo AUDUSD,H4: init.4: CrossName[3]=CROSS_3
2009.04.10 14:41:12 ejemplo AUDUSD,H4: init.4: CrossName[2]=CROSS_2
2009.04.10 14:41:12 ejemplo AUDUSD,H4: init.4: CrossName[1]=CROSS_1
2009.04.10 14:41:12 ejemplo AUDUSD,H4: init.3: lectura completa
2009.04.10 14:41:12 ejemplo AUDUSD,H4: init.3: CrossName[3]=CROSS_3
2009.04.10 14:41:12 ejemplo AUDUSD,H4: init.3: CrossName[2]=CROSS_2
2009.04.10 14:41:12 ejemplo AUDUSD,H4: init.3: CrossName[1]=CROSS_1
2009.04.10 14:41:12 ejemplo AUDUSD,H4: -------------------------------
2009.04.10 14:41:12 ejemplo AUDUSD,H4: init.2: CrossName[3]=CROSS_3
2009.04.10 14:41:12 ejemplo AUDUSD,H4: init.2: CrossName[2]=CROSS_2
2009.04.10 14:41:12 ejemplo AUDUSD,H4: init.2: CrossName[1]=CROSS_1
2009.04.10 14:41:12 ejemplo AUDUSD,H4: init.1: lectura completa
2009.04.10 14:41:12 ejemplo AUDUSD,H4: init.1: CrossName[3]=CROSS_3
2009.04.10 14:41:12 ejemplo AUDUSD,H4: init.1: CrossName[2]=CROSS_2
2009.04.10 14:41:12 ejemplo AUDUSD,H4: init.1: CrossName[1]=CROSS_1
ha demostrado que el problema parece estar en la conversión de
¿Cómo debería ser? Lógicamente estaba pensando en determinar el ORDtype antes de que se forme la señal. de lo contrario cómo se tendrá en cuenta en los criterios de negociación. y otro inconveniente - las posiciones no se abren incluso con un historial vacío((
Te respondí en privado - creo que será más productivo de esta manera.
Es mucho más fácil, no reinventar la rueda, y tomar uno de los Asesores Expertos ya hechos, operando en la martingala y ver cómo ya se implementa.
Por ejemplo, Universum 3.0.
Gracias, estoy completamente de acuerdo, todo se inventó hace mucho tiempo
'Cualquier pregunta de los recién llegados, para no saturar el foro. No dejes pasar a los profesionales. En ninguna parte sin ti".
Gracias
Ejecución de la función init() al probar el EA en el probador.
Quiero normalizar algunas variables externas en la función init() del EA
y utilizar estos valores normalizados para llamar al indicador desde start().
No quiero incluir esta normalización en start().
¿Se ejecutará la función init() cada vez que se cambie una variable externa durante la optimización del EA en el probador de estrategias?Ejecución de la función init() al probar el EA en el probador.
Quiero normalizar algunas variables externas en la función init() del EA
y utilizar estos valores normalizados (nuevos) para llamar al indicador desde start().
No quiero incluir esta normalización en start().
¿Se ejecutará la función init() cada vez que se cambie una variable externa durante la optimización del EA en el probador de estrategias?Sí, será
int start()
{
if (OrdersTotal() == 0
&& TimeDayOfWeek(TimeCurrent()) == 5
&& TimeHour(TimeCurrent()) == 12
&& TimeMinute(TimeCurrent()) == 30
&& TimeSeconds(TimeCurrent()) >= 00)
{
Alert("Тра ляля");
OrderSend(Symbol(),OP_SELL,Lots,Bid,3,0,0,"sell",999999,0,Red);
}
¿Alguien tiene idea de por qué no se abre un pedido aquí? ¿Qué estoy haciendo mal?
Bien, este... Hay que esperar hasta el viernes, si hay una garrapata en ese minuto, debería abrirse.
Bien, este... Hay que esperar hasta el viernes, si hay una garrapata en ese minuto, debería abrirse.
>> Esa es la cuestión, lo hago el viernes o cualquier otro día de la semana y la alerta funciona y la orden no se abre en absoluto.