Discusión sobre el artículo "Cómo construir un EA que opere automáticamente (Parte 09): Automatización (I)"
hola Daniel, mi nombre es Roberta, como activo este EA en metatrader, me puedes ayudar?
Necesitas compilarlo y luego aparecerá entre los demás Expert Advisors que la plataforma tiene por defecto, luego lo reproduces en el gráfico de la misma manera que lo harías con cualquier otro programa.
Un detalle: Algo Trading debe estar habilitado en la plataforma para que funcione:
<< Algo Trading desactivado ;
<< Algo Trading habilitado;
Dani, no se como compilar, no se mucho de programación, acabo de empezar con este sistema metatrader, ¿me puedes ayudar?
Tienes que compilarlo y luego te aparecerá entre los demás Asesores Expertos que tiene por defecto la plataforma, luego lo reproduces en el gráfico de la misma forma que lo harías con cualquier otro programa.
Un detalle: Algo Trading debe estar habilitado en la plataforma para que funcione:
<< Algo Trading desactivado ;
<< Algo Trading habilitado;
Dani, no se como compilar, no se mucho de programación, acabo de empezar con este sistema metatrader, ¿me puedes ayudar?
En este caso, te puedo sugerir una lista de reproducción que estoy montando en YOUTUBE. Es muy básica, pero dirigida precisamente a gente que está empezando. Los vídeos serán cortos y centrados en un tema concreto, pero siempre dirigidos al principiante en MetaTrader. Échale un vistazo luego, puede que te ayude a dar tus primeros pasos. Pero ten cuidado con lo que realmente pones en la plataforma, ya que estarás trabajando con tu cuenta de corretaje y usando dinero real.... Lo dicho CUIDADO ....
El enlace a la lista de reproducción es: https: //www.youtube.com/watch?v=Q5rgggKuUY4& list=PLpkiMqQzUzgA3fgPE1D-ZcjnEKVwgEg8z
- 2022.12.24
- www.youtube.com
Buenas tardes Daniel,
En primer lugar, gracias por compartir tus conocimientos, ¡me están ayudando mucho!
Tengo una duda sobre cómo entiende el servidor de trading las órdenes de stop y take profit, ¿se consideran órdenes independientes o forman parte de una única "posición estructurada"? En otras palabras, cuando se cierra la posición, ¿el servidor de negociación siempre elimina el SL y el TP o debo preocuparme por las órdenes huérfanas?
Esta duda me surge cuando en tu artículo comentas el riesgo de la "pata coja" y también cuando comentas que para activar el trailing stop en una cuenta de cobertura hay que permitir 2 posiciones abiertas.
Saludos
Esta pregunta me surgió cuando en tu artículo comentas el riesgo de la "pata coja" y también cuando comentas que para activar el trailing stop en una cuenta de cobertura necesitamos permitir 2 posiciones abiertas.
Saludos
Las dudas forman parte de ello. No es vergonzoso preguntar. Es vergonzoso mantener dudas y difundir información sin conocimiento.
Pero vayamos por partes. Entendamos primero una situación y luego la otra.
->Cuando colocas una orden en el servidor, o abres una posición, puedes hacerlo de dos formas: Cuando envías la orden con el stop y take ya establecidos en la orden o posición a abrir. En este caso sólo envías una petición al servidor. Si no has puesto el stop o take en la orden, puedes hacerlo más tarde ajustando las cosas. En cualquier caso, sólo tendrás una orden o posición en el servidor. Esto es lo que mucha gente llama una orden OCO. En otras palabras, cuando el stop o take se ejecute, la posición se cerrará y todo será como probablemente ya sabes cuando se trata de órdenes OCO. No creo que tengas ninguna duda al respecto.
->Ahora tenemos un problema, que ya he tratado en esta misma serie de artículos. Una orden o posición OCO no indica que su Take o Stop no se vayan a saltar. Sólo se ejecutarán si se produce una operación a ese precio concreto. Para evitar que la orden se salte, algunos programadores no utilizan órdenes OCO, sino que hacen algo un poco diferente. Es este algo diferente lo que tiende a generar esas piernas cojas, es decir, se obtiene una orden listada en el libro, pero no está cubierta por ninguna otra orden. En este caso, estamos utilizando al menos dos órdenes para controlar la posición. Haciendo esto, evitamos el skipped stop, porque aunque el precio se salte la orden OCO, no se saltará la orden en el libro, que está ahí precisamente para cerrar la posición abierta en MARRA... Sin embargo, esto no funciona en el tipo de cuenta HEDGING, porque este tipo de cuentas te permiten mantener una posición de compra y otra de venta al mismo tiempo, en el mismo activo. Es casi como una OPCIÓN BINARIA ... pero cuando esta técnica de utilizar dos órdenes se lleva a cabo en una cuenta NETTING, la posición se cierra. Pero hay que tener cuidado para evitar mantener una orden suelta en el libro.
Para entender esto, usted realmente necesita leer los 15 artículos de la serie y probar el sistema automático que demuestro. Pero hazlo en cuentas demo, tanto en FOREX como en bolsa. Entonces entenderá realmente de lo que estoy hablando. No intente entenderlo sólo imaginando cómo debería o podría funcionar. Prueba el sistema en cuentas demo, tanto en FOREX, que utiliza cuentas HEDGING, como en BOLSA, que utiliza cuentas NETTING... 😁👍
Las dudas forman parte de ello. No es vergonzoso preguntar. Es vergonzoso mantener la duda y difundir información sin conocimiento.😁
Pero vayamos por partes. Entendamos primero una situación y luego la otra.
->Cuando colocas una orden en el servidor, o abres una posición, puedes hacerlo de dos formas: Cuando envías la petición con el stop y take ya establecidos en la orden o posición a abrir. En este caso sólo envías una petición al servidor. Si no has puesto el stop o take en la orden, puedes hacerlo más tarde ajustando las cosas. En cualquier caso, sólo tendrás una orden o posición en el servidor. Esto es lo que mucha gente llama una orden OCO. En otras palabras, cuando el stop o take se ejecute, la posición se cerrará y todo será como probablemente ya sabes cuando se trata de órdenes OCO. No creo que tengas ninguna duda sobre esto.
->Ahora tenemos un problema, que ya he tratado en esta misma serie de artículos. Una orden o posición OCO no indica que su Take o Stop no se vayan a saltar. Sólo se ejecutarán si se produce una operación a ese precio concreto. Para evitar que la orden se salte, algunos programadores no utilizan órdenes OCO, sino que hacen algo un poco diferente. Es este algo diferente lo que tiende a generar esas piernas cojas, es decir, tienes una orden listada en el libro, pero no está cubierta por ninguna otra orden. En este caso, estamos utilizando al menos dos órdenes para controlar la posición. Haciendo esto, evitamos el skipped stop, porque aunque el precio se salte la orden OCO, no se saltará la orden en el libro, que está ahí precisamente para cerrar la posición abierta en MARRA... Sin embargo, esto no funciona en el tipo de cuenta HEDGING, porque este tipo de cuentas te permiten mantener una posición de compra y otra de venta al mismo tiempo, en el mismo activo. Es casi como una OPCIÓN BINARIA ... pero cuando esta técnica de utilizar dos órdenes se lleva a cabo en una cuenta NETTING, la posición se cierra. Pero hay que tener cuidado para evitar mantener una orden suelta en el libro.
Para entender esto, usted realmente necesita leer los 15 artículos de la serie y probar el sistema automático que demuestro. Pero hazlo en cuentas demo, tanto en FOREX como en bolsa. Entonces entenderá realmente de lo que estoy hablando. No intente entenderlo sólo imaginando cómo debería o podría funcionar. Prueba el sistema en cuentas demo, tanto en FOREX, que utiliza cuentas HEDGING, como en BOLSA, que utiliza cuentas NETTING... 😁👍
Muchas gracias por tu explicación. Ahora lo he entendido bien.
Sí, acabo de terminar de leer todos los artículos y pronto empezaré a hacer pruebas.
Saludos
Hola, he estado siguiendo a lo largo y la aplicación de su EA pero ive ejecutar en un error que no puedo llegar a la parte inferior de. ¿Puede ayudar con los errores. Los errores son:
'C_ManagerAce.mqh' C_ManagerAce.mqh
C_Orders.mqh' C_Orders.mqh
C_Terminal.mqh' C_Terminal.mqh
C_Terminal::GetTerminalInfos' - no se puede acceder a la función privada C_ManagerAce.mqh
véase la declaración de la función 'C_Terminal::GetTerminalInfos' C_Terminal.mqh
C_Terminal::FinanceToPoints' - no se puede acceder a la función privada C_ManagerAce.mqh
véase la declaración de la función 'C_Terminal::FinanceToPoints' C_Terminal.mqh
C_Terminal::GetTerminalInfos' - no se puede acceder a la función privada C_ManagerAce.mqh
véase la declaración de la función 'C_Terminal::GetTerminalInfos' C_Terminal.mqh
C_Terminal::FinanceToPoints' - no se puede acceder a la función privada C_ManagerAce.mqh
véase la declaración de la función 'C_Terminal::FinanceToPoints' C_Terminal.mqh
C_Terminal::GetTerminalInfos' - no se puede acceder a la función privada C_ManagerAce.mqh
ver declaración de la función 'C_Terminal::GetTerminalInfos' C_Terminal.mqh
He utilizado el mismo código exacto como usted porque im aprender programación una vez más. Tengo una licenciatura en ciencias de la computación. No entiendo porque me salen estos errores cuando compilo mi codigo y tengo el codigo como tu y el tuyo compila. Ayuda por favor
Hola, he estado siguiendo a lo largo y la aplicación de su EA pero ive ejecutar en un error que no puedo llegar a la parte inferior de. ¿Puede ayudar con los errores. Los errores son:
'C_ManagerAce.mqh' C_ManagerAce.mqh
'C_Orders.mqh' C_Orders.mqh
C_Terminal.mqh' C_Terminal.mqh
C_Terminal::GetTerminalInfos' - no se puede acceder a la función privada C_ManagerAce.mqh
ver declaración de la función 'C_Terminal::GetTerminalInfos' C_Terminal.mqh
C_Terminal::FinanceToPoints' - no se puede acceder a la función privada C_ManagerAce.mqh
ver declaración de la función 'C_Terminal::FinanceToPoints' C_Terminal.mqh
C_Terminal::GetTerminalInfos' - no se puede acceder a la función privada C_ManagerAce.mqh
ver declaración de la función 'C_Terminal::GetTerminalInfos' C_Terminal.mqh
C_Terminal::FinanceToPoints' - no se puede acceder a la función privada C_ManagerAce.mqh
ver declaración de la función 'C_Terminal::FinanceToPoints' C_Terminal.mqh
C_Terminal::GetTerminalInfos' - no se puede acceder a la función privada C_ManagerAce.mqh
ver declaración de la función 'C_Terminal::GetTerminalInfos' C_Terminal.mqh
He utilizado el mismo código exacto como usted porque im aprender programación una vez más. Tengo una licenciatura en ciencias de la computación. No entiendo porque me salen estos errores cuando compilo mi codigo y tengo el codigo como tu y el tuyo compila. Ayuda por favor
Los errores que reportas se deben al intento de acceder a algo privado de la clase, fuera del cuerpo de la misma. Te sugiero que primero empieces con algo un poco más sencillo. Para ello, primero intenta entender qué son las cláusulas private y las cláusulas public. Pero sobre todo, por qué utilizar una u otra.
- 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
Artículo publicado Cómo construir un EA que opere automáticamente (Parte 09): Automatización (I):
Aunque la creación de un Expert Advisor automático no es una tarea muy complicada, sin los conocimientos adecuados, se puede acabar cometiendo muchos errores. En este artículo, vamos a ver cómo construir el primer nivel de automatización, que es crear el disparador para activar breakeven y trailing stop.
En el vídeo 01 se puede ver una demostración de este sistema en funcionamiento. Para aquellos que imaginan que es algo muy diferente o incluso no funcional, vean el video y saquen sus propias conclusiones. Sin embargo, lo mejor es entender lo que está pasando, compilar el EA y hacer sus propias pruebas en la cuenta DEMO. Así, la comprensión de todo el sistema será más sólida y clara.
Autor: Daniel Jose