Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen de largo. En ninguna parte sin ti - 6. - página 238
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
Me pueden sugerir lo siguiente, hay N EAs en la cuenta, que bajo ciertas condiciones pueden abrir todos una orden al mismo tiempo, cada uno de ellos verifica no más de 1 orden en la cuenta, pero a veces termino con N órdenes, ¿qué puedo hacer?
Póngase en contacto con ellos, probablemente adivinarán el motivo y le sugerirán remotamente una solución ;)
Hola de nuevo me gustaría plantear una duda sobre la colocación de un stop en la última orden.
Quiero aclarar que en el probador a veces no se coloca un stop en la última orden.
Esto no ha ocurrido hasta ahora en las pruebas de avance. Pero como se dice, ¿para qué esperar?)
Código
Me pueden sugerir lo siguiente, hay N EAs en la cuenta, que bajo ciertas condiciones pueden abrir todos una orden al mismo tiempo, cada uno de ellos verifica no más de 1 orden en la cuenta, pero a veces termino con N órdenes, ¿qué puedo hacer?
leer artículos
Pausa entre operaciones
Error 146 ("Flujo comercial ocupado") y cómo solucionarloleer artículos
Pausa entre operaciones
Error 146 ("Flujo comercial ocupado") y cómo solucionarlo¡¡¡Gracias!!!
¿Está seguro de que esta parte del código es el origen del problema? A partir de lo que has mostrado es difícil sacar conclusiones: hay muchas variables desconocidas y no se puede ver la apertura en sí.
Para encontrar la razón usted mismo, imprima o muestre los valores de las variables con comentarios. Así podrás ver sus valores en cualquier momento.
Esto se basa en eOpenByTime Expert Advisor del Sr. Kim. También añadí un trailing stop, cerré al final de la semana y abrí en un día determinado de la semana. En esta forma el Asesor Experto funciona como debe ser.
La apertura del acuerdo se realiza de la siguiente manera, he añadido sólo el día de una semana de apertura del acuerdo pero no hay nada que fastidiar aquí
Para ser honesto, no entiendo muy bien por qué TimeCurrent se compara con TimeCurrent + TimeTradeOpen donde TimeTradeOpen es un parámetro externo del tipo TimeTradeOpen = "19:51". (Tampoco entiendo por qué funciona esta comparación. La duración es el tiempo durante el cual el Asesor Experto intentará abrir una posición.
Por analogía, he añadido un cierre de una posición el viernes.
Hasta ahora, todo estaba funcionando.
Entonces quería añadir una condición que mirara una vela a una hora determinada y un día determinado de la semana, si la vela es alcista, entonces vender, si es bajista, entonces comprar.
De la misma manera, he copiado estas 3 líneas, que han funcionado antes, pero ahora por alguna razón no quieren hacerlo.
A continuación, el código para la apertura de la posición. TimeTradeIf tiene un formato similar TimeTradeIf = "19:51" y también se establece mediante parámetros externos.
Todo el código es bastante largo, ¿es necesario insertarlo?
Hola de nuevo me gustaría plantear una duda sobre la colocación de un stop en la última orden.
Quiero aclarar que en el probador a veces no se coloca un stop en la última orden.
Esto no ha ocurrido hasta ahora en las pruebas de avance. Pero como se dice, ¿para qué esperar?)
Código
Encontré el problema. El código está bien. es el escritor quien exige lo imposible ))
Se basa en el eOpenByTime Expert Advisor del estimado Sr. Kim. También añadí un trailing stop, cerré al final de la semana y abrí en un día determinado de la semana. En esta forma el EA funciona como debería.
La apertura del acuerdo se realiza de la siguiente manera, he añadido sólo el día de la semana de apertura del acuerdo pero no hay nada que fastidiar aquí
Para ser sincero, no entiendo muy bien por qué TimeCurrent se compara con TimeCurrent + TimeTradeOpen, donde TimeTradeOpen es un parámetro externo del tipo TimeTradeOpen = "19:51". (En realidad, es el tiempo de apertura de la posición que necesitamos.) Tampoco entiendo por qué funciona esta comparación. La duración es el tiempo durante el cual el Asesor Experto intentará abrir una posición.
Por analogía, he añadido un cierre de una posición el viernes.
Hasta ahora, todo estaba funcionando.
Entonces quería añadir una condición que mirara una vela a una hora determinada y un día determinado de la semana, si la vela es alcista, entonces vender, si es bajista, entonces comprar.
De la misma manera, he copiado estas 3 líneas, que han funcionado antes, pero ahora por alguna razón no quieren hacerlo.
A continuación, el código para la apertura de la posición. TimeTradeIf tiene un formato similar TimeTradeIf = "19:51" y también se establece mediante parámetros externos.
El código completo es bastante largo, ¿debo pegarlo?
Para ser sincero, ya he olvidado cuál es el problema. En esta sección de código veo que sólo se comprueban las posiciones cortas y también se especifica la apertura de posiciones cortas:
Para ser sincero, he olvidado cuál es el problema. En esta sección de código veo que sólo se comprueban las posiciones cortas y sólo se abren las posiciones cortas:
La variable Sell es externa y contiene verdadero o falso, 1 o 0, respectivamente,
El de Kim es eOpenByTime.
La lógica, el algoritmo de las acciones, es defectuoso.
Si dejara la función start() y las variables, lo que llevan, entonces podemos sugerir algo.
Artem, esto es correcto, la variable Sell es externa y lleva el valor verdadero o falso, 1 o 0 respectivamente,
He mirado el de Kim, eOpenByTime.
La lógica, el algoritmo de las acciones, es defectuoso.
Si mostrara la función start() y las variables, lo que llevan, entonces podemos sugerir algo.
La idea es la siguiente: si una vela es alcista en un determinado DayOfWeekIf en un determinado TimeTradeIf, entonces Sell = true (vender), si es bajista, entonces Sell = false (comprar).
Debería serlo, pero en la prueba sólo consigo intercambios en rebajas.
eOpenByTime permite abrir el trato a una hora determinada, yo añadí más a un día determinado de la semana if (DayOfWeek()==DayOfWeekOpen, donde DayOfWeekOpen = 1,2,3,4,5
Adjunto el código en dos partes, no hay más remedio, he resaltado la condición del problema. Todo funciona como debería sin él, es decir, fijamos la venta y abrimos una operación a la hora correcta en el día correcto de la semana.
Sólo se ha recortado el arrastre.