Preguntas de los principiantes MQL5 MT5 MetaTrader 5 - página 283
![MQL5 - Lenguaje de estrategias comerciales para el terminal de cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Sobre la telepatía y lo "puramente técnico" - ese soy yo para el Sr.Reshetov: )))
Buena suerte para ti también.
A veces parece que algunos veteranos experimentados bloquean deliberadamente la forma correcta de pensar - nunca se me habría ocurrido... y cuánto tiempo perdido en vano (( así es como hay que sentarse en el 95% de las pérdidas (((().
Bueno, la idea de la captura de precios es correcta, pero la implementación es lo que se llama "por adelantado". Yo mismo lo hice, pero rápidamente lo dejé. Mi objetivo era obtener un beneficio garantizado de 20-25 puntos en la ruptura y si mi beneficio era de 22 puntos, necesitaba un deslizamiento a 20, es decir, necesitaba cerrar mi orden si mi beneficio había disminuido de 23 a 20 puntos para no perder todo el beneficio por un par de puntos. Utilicé un bucle similar hasta llegar a los backtests. Entonces reescribí el algoritmo para dar prioridad a la tramitación de esas órdenes y dejar en suspenso todas las demás operaciones. Como variante intermedia, desarrollé dos funciones: una para pruebas reales y otra para pruebas retrospectivas, por así decirlo, algoritmos aproximados. Estos trucos son una táctica, no una estrategia, pero también son importantes.
Bueno, la idea de la captura de precios es correcta, pero la implementación es lo que se llama "por adelantado". Yo mismo lo hice, pero rápidamente lo dejé. Mi objetivo era obtener un beneficio garantizado de 20-25 puntos en la ruptura y si mi beneficio era de 22 puntos, necesitaba un deslizamiento a 20, es decir, necesitaba cerrar mi orden si mi beneficio había disminuido de 23 a 20 puntos para no perder todo el beneficio por un par de puntos. Utilicé un bucle similar hasta llegar a los backtests. Entonces reescribí el algoritmo para dar prioridad a la tramitación de esas órdenes y dejar en suspenso todas las demás operaciones. Como variante intermedia, desarrollé dos funciones -una para reales y otra para backtests- por así decirlo, algoritmos aproximados. Estos métodos son ya una táctica, no una estrategia, pero también son importantes.
Muchas gracias, he vuelto a releer todos los artículos sobre las pruebas, pero no se menciona la diferencia entre las pruebas de demostración y las reales, y esto es muy importante. Accidentalmente lo probé en un terminal real y los resultados fueron bastante diferentes. Ahora significa que "el probador crea un movimiento de precio real de forma discreta y muestra las nuevas cotizaciones sólo en la siguiente iteración de todo el EA, por lo que reescribí el código para las pruebas utilizando series de declaraciones IF, donde antes estaban las declaraciones de bucle" (de). Tengo 57 años y estos códigos parecen un bosque denso, aunque últimamente he empezado a entenderlo un poco tocando según qué reglas - cambio las líneas de apertura de las órdenes para fijar las órdenes pendientes - OP_BUY a OP_BUYSTOP y funciona bien - resulta un pequeño retraso y puedo gestionar este retraso ...
No entiendo como puedo determinar por 2-3 puntos lo que se debe cerrar para no perder todo el beneficio. Lo hago manualmente cuando hago scalping
Muchas gracias, he releído todos los artículos sobre las pruebas, pero en ningún sitio se indica esta diferencia en las pruebas de la demo y las reales, y es muy importante. Accidentalmente lo probé en un terminal real y los resultados fueron bastante diferentes. Ahora significa que "el probador crea un movimiento de precio real de forma discreta y muestra las nuevas cotizaciones sólo en la siguiente iteración de todo el EA, por lo que reescribí el código para las pruebas utilizando series de declaraciones IF, donde antes estaban las declaraciones de bucle" (de). Tengo 57 años y estos códigos parecen un bosque denso, aunque he empezado a entenderlo un poco tocando qué controla qué - cambio las líneas de orden de apertura para establecer órdenes pendientes - OP_BUY a OP_BUYSTOP y funciona bien - tengo un ligero retraso y puedo gestionar este retraso ...
También sobre el cierre no entiendo como determinar a 2-3 puntos lo que se debe cerrar sin perder todas las ganancias, lo hago manualmente cuando hago scalping
En realidad, no se sustituyen los operadores como tales, sino la lógica de procesamiento. Por ejemplo, si hablamos de un pestillo, el algoritmo sería algo así:
1. comprobaciones básicas (esto incluye la comprobación de si el contexto está libre para operar, si el Asesor Experto está parado, si se permite la apertura de órdenes, etc.). Esto dará cierta estabilidad al trabajo del robot, por ejemplo, OrderSend/Modify/Delete no debería ejecutarse y arrojar errores si el contexto comercial está ocupado.
2. Si usas un latch, yo lo llamo trampa, entonces el código de procesamiento debe ir en segundo lugar. Aquí se comprueba la variable (dejemos que sea TrapEnabled), si se pone a true, entonces se realiza la comprobación correspondiente para dejar caer el beneficio y cerrar la posición. En caso contrario, vuelve a esperar el siguiente tick y activa start(). Así, cuando se activa la trampa, se le da la máxima prioridad. Todas las demás operaciones se ignoran, es decir, las órdenes no se abren ni se modifican hasta que se cierra la orden de trampa o de beneficio.
3. Contar y analizar las posiciones abiertas, si las hay. El análisis incluye simplemente la comprobación de si se alcanza el umbral de activación (y el establecimiento de TrapEnabled), así como el cálculo del beneficio de la sesión, y otra lógica, en su mayoría necesaria para modificar o cerrar una orden.
4. Comprobación de las condiciones de apertura de la orden, y de la apertura de la orden como tal (cálculo del punto de entrada, stops, beneficios, tamaño del lote, etc.). Nota: Los corredores ECN necesitan abrir una orden con TP y SL cero, y establecerlos después de la apertura exitosa de una orden.
5. Regulación de las órdenes (arrastre, cierre, modificación, solapamiento, etc.)
6. Visualización de información adicional en un gráfico, algo así como un cuadro de mando, para que el proceso de negociación sea visible. Digamos, el beneficio de la sesión, el número de órdenes abiertas, si la trampa está funcionando en este momento.
Esto es aproximadamente así. Las aclaraciones y los detalles vienen definidos por los requisitos técnicos específicos. Por cierto, tenga en cuenta que las órdenes pendientes de STOP y LIMIT pueden abrirse a un precio diferente al que usted estableció. Usted ha colocado una orden OP_BUYSTOP a 1,3500 y el broker la ha aceptado, pero a la hora de la apertura, puede ver que el broker la ha abierto a 1,3502. Por lo general, la razón es que el precio de 1,3500 no estaba en la corriente de negociación, es decir, había un precio de 1,3499, luego 1,3502, a este precio se abre la orden.
En general, hay muchos detalles diferentes. Hay que vivir un poco y tener algunos golpes.
Hablando de la trampa. Por lo general, un corredor no le permitirá establecer un stop loss de 2-3 pips desde el precio actual y tendrá que esperar y cerrar al precio de mercado. Se define una variable TrapEnabled (se puede especificar cualquier nombre, sólo como referencia) como un bool a nivel global (se establece como falso por defecto o en el init()), durante el análisis de una posición abierta se establece como verdadero, si el beneficio está en el nivel de disparo (22-23 puntos). En el paso 2, se comprueba si (TrapEnabled) ... llamar a la función con lógica de trampa (de lo contrario, si la trampa no está activa, se ejecuta todo el algoritmo de la función start() hasta el final). Bien, la función con lógica de trampa comprueba que el beneficio cae <= precio deseado (20 puntos) y cierra al precio de mercado con deslizamiento (TrapEnabled debe ser restablecido a false). Si el precio sigue estando por encima del precio mínimo de cierre, vuelva y espere a la siguiente cotización. Por lo tanto, la orden se cerrará en beneficio por sí misma (en este caso se debe manejar TrapEnabled), o será cerrada en beneficio por el robot.
Este es el punto general para aclarar el algoritmo. Espero haberlo dejado claro.
Muchas gracias, he leído y releído el poema, pero la lógica es fantástica, resulta mejor que cualquier grial - se puede poner cualquier lote y estar siempre en el negro, es como todo brillante incluso yo no puedo creerlo - incluso tengo un poco loco realmente hermoso - sólo muchas gracias ... Por favor, hacer un artículo: Creo que va a ganar el reconocimiento en el ranking mundial de los comerciantes ...
Bueno, supongo que el comerciante que gana con el comercio está familiarizado con tales trucos y no hay nada nuevo en él, y no hay mucho tiempo para escribir un artículo ... Hay muchos proyectos y el tiempo se acaba... Si hay alguna pregunta técnica, hay chicos competentes, incluidos los moderadores, para que no quede sin respuesta. ))) Ni siquiera es alquimia, sólo una pequeña "característica" con la que se puede equipar absolutamente cualquier robot de trading. Pero lo he notado muy raramente, tal vez no es muy efectivo, pero en mi proyecto la rentabilidad se incrementó en un 10-15% (en diferentes instrumentos) debido a la eliminación de la pérdida de beneficios de tal manera. También recomendaría como otra "característica" limitar la negociación por días de la semana, es decir, 5 parámetros de entrada de tipo bool, pero es opcional y sobre todo se refiere a las brechas en el fin de semana cuando hay una "brecha" entre el precio de cierre del mercado (el viernes) y el precio de apertura del mercado (el lunes) y el spread puede ampliarse. En general, después de las 20 horas del viernes, creo que poca gente abre posiciones, más bien intenta cerrar a esa hora, porque nadie sabe qué noticias se publicarán durante el fin de semana.
Una cosa más, en caso de que no hayas prestado atención. Las divisas líquidas están ligadas a la energía (principalmente al petróleo) porque existe un acuerdo entre Estados Unidos y los Emiratos Árabes Unidos para liquidar las cuentas del petróleo sólo en dólares estadounidenses, y está el FMI (Fondo Monetario Internacional), que controla la fortaleza del dólar estadounidense (véase el índice del dólar DI). Es el FMI el que regula la fortaleza del dólar y, en consecuencia, el precio de la energía, los metales y, bueno, las bolsas y el mercado de divisas. Si el DI sube, el petróleo y el oro bajarán y viceversa. El mismo reflejo tendrá el mercado de divisas.
¿Por qué el nivel de vida es mejor en Estados Unidos, esto con una deuda nacional de cerca de un millón por estadounidense? Todos los cálculos energéticos se hacen en USD. Alemania, Francia y toda Europa están convirtiendo euros en dólares para comprar gas y petróleo a Rusia, y Rusia está convirtiendo esos dólares en el rublo ruso. Europa pierde en euros, Rusia pierde en rublos. Sólo el dólar gana, y gana mucho...
En definitiva, esto se acerca más a una visión fundamental que a una técnica. Pero en cualquier caso, hay que tenerlo en cuenta.
Buena suerte.
Hola a todos, ¿alguien puede decirme dónde puedo encontrar un indicador como el que se muestra en la captura de pantalla.
¿Pueden decirme cómo obtener el valor numérico de un sinónimo (el par de divisas actual)?