MetaTrader 5 - Trading MetaTrader 5 cuenta con el sistema de contabilidad de posición de cobertura La plataforma MetaTrader 5 fue diseñado originalmente para el comercio dentro del sistema de contabilidad de posición de compensación. El sistema de compensación permite tener sólo una posición por instrumento financiero, lo que significa que todas las operaciones adicionales en ese instrumento sólo conducen a cerrar, invertir o cambiar el volumen de la posición ya existente. Con el fin de ampliar las posibilidades de los comerciantes al por menor de Forex, hemos añadido el segundo sistema de contabilidad de cobertura. Ahora, es posible tener múltiples posiciones por símbolo, incluyendo direcciones opuestas. Esto allana el camino a la implementación de estrategias comerciales basadas en el llamado bloqueo si el precio se mueve contra un comerciante, que puede abrir una posición en la dirección opuesta. Dado que el nuevo sistema es similar al que se utiliza en MetaTrader 4, será familiar para los comerciantes. Al mismo tiempo, los comerciantes podrán disfrutar de todas las ventajas de la quinta versión de la plataforma de llenado de pedidos utilizando múltiples ofertas (incluidos los llenados parciales), multicurrency y multithreaded probador con soporte para MQL5 Cloud Network. y mucho más. Ahora, puede utilizar una cuenta para operar en los mercados que se adhieren al sistema de compensación y permitir tener sólo una posición por instrumento y utilizar otra cuenta en la misma plataforma para operar en Forex y aplicar cobertura. Este artículo describe los sistemas de compensación y cobertura en detalle, así como arroja luz sobre los cambios relacionados con la implementación del segundo sistema de contabilidad. La contabilidad de posición depende de una cuenta de trading Un sistema de contabilidad de posición se establece en un nivel de cuenta y se muestra en el encabezado de la ventana de terminal y en el Diario: Para abrir una cuenta demo con cobertura, active la opción apropiada: Para abrir una cuenta real con cobertura, Su corredor. Sistema de compensación Con este sistema, sólo puede tener una posición común para un símbolo al mismo tiempo: si hay una posición abierta para un símbolo, ejecutar un trato en la misma dirección aumenta el volumen de esta posición. Si se ejecuta un trato en la dirección opuesta, el volumen de la posición existente puede disminuirse, la posición puede cerrarse (cuando el volumen de trato es igual al volumen de posición) o invertida (si el volumen del trato contrario es mayor que La posición actual). No importa, lo que ha causado el trato contrario una orden de mercado ejecutado o una orden pendiente activada. El siguiente ejemplo muestra la ejecución de dos ofertas de compra EURUSD 0.5 lotes cada uno: La ejecución de ambos acuerdos resultó en una posición común de 1 lote. Sistema de cobertura Con este sistema, puede tener varias posiciones abiertas de un mismo símbolo, incluyendo posiciones opuestas. Si tiene una posición abierta para un símbolo y ejecuta un nuevo trato (o una orden pendiente activa), también se abre una nueva posición. Tu posición actual no cambia. El siguiente ejemplo muestra la ejecución de dos ofertas EURUSD Buy 0.5 lotes cada uno: La ejecución de estos acuerdos resultó en la apertura de dos posiciones separadas. Impacto del sistema seleccionado Dependiendo del sistema de contabilidad de posición, algunas de las funciones de la plataforma pueden tener un comportamiento diferente: Las reglas de herencia de Stop Loss y Take Profit cambian. Para cerrar una posición en el sistema de compensación, debe realizar una operación de negociación opuesta para el mismo símbolo y el mismo volumen. Para cerrar una posición en el sistema de cobertura, seleccione explícitamente el comando Cerrar posición en el menú contextual de la posición. Una posición no se puede invertir en el sistema de cobertura. En este caso, la posición actual se cierra y se abre una nueva con el volumen restante. En el sistema de cobertura, se dispone de una nueva condición para el cálculo del margen Margen con cobertura. Nuevo tipo de operación comercial - Close By El nuevo tipo de operación comercial se ha agregado para las cuentas de cobertura cerrando una posición por otra opuesta. Esta operación permite el cierre de dos posiciones dirigidas en sentido opuesto en un solo símbolo. Si las posiciones opuestas tienen números diferentes de lotes, sólo queda un orden de los dos. Su volumen será igual a la diferencia de lotes de las posiciones cerradas, mientras que la dirección de la posición y el precio abierto coincidirá (en volumen) con la mayor de las posiciones cerradas. Comparado con un solo cierre de las dos posiciones, el cierre por una posición opuesta permite que los comerciantes ahorren una extensión: En caso de un solo cierre, los comerciantes tienen que pagar un diferencial dos veces: al cerrar una posición de la compra en un precio bajo (oferta) Y cerrar una posición de venta en una posición más alta (Pregunte). Cuando se utiliza una posición opuesta, se utiliza un precio abierto de la segunda posición para cerrar el primero, mientras que un precio abierto de la primera posición se utiliza para cerrar el segundo. En este último caso, se coloca un cierre por orden. Los boletos de posiciones cerradas se especifican en su comentario. Un par de posiciones opuestas se cierra por dos por ofertas. La ganancia / pérdida total resultante del cierre de ambas posiciones se especifica solamente en un acuerdo. Cálculo de margen en el sistema de cobertura de contabilidad de posición Si se utiliza el sistema de contabilidad de posición de cobertura, el margen se calcula utilizando las mismas fórmulas y principios descritos anteriormente. Sin embargo, hay algunas características adicionales para varias posiciones del mismo símbolo. Posiciones / órdenes abiertas en la misma dirección Se resumen sus volúmenes y se calcula para ellos el precio medio ponderado abierto. Los valores resultantes se utilizan para calcular el margen por la fórmula correspondiente al tipo de símbolo. Para órdenes pendientes (si la relación de margen es distinta de cero), el margen se calcula por separado. Las posiciones abiertas opuestas del mismo símbolo se consideran cubiertas o cubiertas. Para tales posiciones son posibles dos métodos de cálculo de margen. El método de cálculo es determinado por el corredor. Utilización de la pata más grande Se utiliza si el cálculo utilizando la pata más grande no se especifica en el campo Margen cubierto de la especificación del contrato. El cálculo se compone de varios pasos: Para el volumen no cubierto Para el volumen cubierto (si se especifica el tamaño del margen cubierto) Para órdenes pendientes El valor del margen resultante se calcula como la suma de los márgenes calculados en cada paso. Cálculo del volumen descubierto Cálculo del volumen total de Todas las posiciones y órdenes de mercado para cada una de las piernas comprar y vender. Cálculo de la posición media ponderada y del precio de mercado del precio abierto para cada segmento: (precio abierto de la posición u orden 1 volumen de la posición u orden 1. precio abierto de la posición u orden N volumen de la posición u orden N) Orden 1. volumen de posición u orden N). Cálculo del volumen descubierto (el menor volumen de la pierna se resta del mayor). El volumen calculado y el precio medio ponderado se utilizan para calcular el margen mediante la fórmula correspondiente correspondiente al tipo de símbolo. El valor medio ponderado de la relación y la tasa se utiliza cuando se tiene en cuenta la razón de margen y la moneda del margen de conversión para depositar la moneda. Cálculo para el volumen cubierto Se utiliza si el valor del margen Cobertura se especifica en una especificación del contrato. En este caso, el margen se cobra por el volumen cubierto, así como por el descubierto. Si el margen inicial se especifica para un símbolo, el margen cubierto se especifica como un valor absoluto (en términos monetarios). Si no se especifica el margen inicial (igual a 0), el tamaño del contrato se especifica en el campo Hedged. El margen se calcula mediante la fórmula adecuada de acuerdo con el tipo de instrumento financiero, utilizando el tamaño del contrato especificado. Por ejemplo, tenemos dos posiciones Comprar EURUSD 1 lote y Vender EURUSD 1 lote, el tamaño del contrato es de 100.000. Si se especifica el valor de 100.000 en el campo Cobertura, el margen para las dos posiciones se calculará según 1 lote. Si especifica 0, no se cobra ningún margen por el volumen cubierto (cubierto). Por cada lote cubierto de una posición, el margen se cobra de acuerdo con el valor especificado en el campo Margen cubierto en la especificación del contrato: Cálculo del volumen cubierto para todas las posiciones abiertas y órdenes de mercado (el volumen no cubierto se resta del tramo más grande). Cálculo de la posición media ponderada y del precio de mercado abierto: (precio abierto de la posición u orden 1 volumen de la posición u orden 1. Precio abierto de la posición u orden N volumen de la posición u orden N) / (volumen de la posición u orden 1. Volumen de posición u orden N). El volumen calculado, el precio medio ponderado y el valor del margen cubierto se utilizan para calcular el margen mediante la fórmula correspondiente correspondiente al tipo de símbolo. El valor medio ponderado de la relación y la tasa se utiliza cuando se tiene en cuenta la razón de margen y la moneda del margen de conversión para depositar la moneda. Cálculo para órdenes pendientes Cálculo del margen para cada tipo de pedido pendiente por separado (Límite de Compra, Límite de Venta, etc.). El valor medio ponderado de la relación y la tasa para cada tipo de pedido pendiente se utiliza cuando se tiene en cuenta la razón de margen y la moneda del margen de conversión para depositar la moneda. Se usa si se especifica el cálculo usando una pata más grande en el campo Margen cubierto de la especificación del contrato. Cálculo del margen para las piernas más cortas y largas para todas las posiciones abiertas y órdenes de mercado. Cálculo del margen para cada tipo de pedido pendiente por separado (Límite de Compra, Límite de Venta, etc.). Resumiendo un margen más largo de la pierna: las posiciones largas y las órdenes del mercado pendientes órdenes pendientes. Resumiendo un margen más corto de la pierna: las posiciones cortas y las órdenes del mercado cortan órdenes pendientes. El valor más grande de todos los valores calculados se utiliza como el valor final del margen. Cambios en MQL5 Ahora, cada posición tiene su boleto único. Normalmente corresponde al ticket de una orden utilizada para abrir la posición. Un ticket se asigna automáticamente a todas las posiciones disponibles después de la actualización del terminal. Al modificar o cerrar una posición en el sistema de cobertura, asegúrese de especificar su ticket (MqlTradeRequest :: ticket). También puede especificar un ticket en el sistema de compensación, sin embargo las posiciones se identifican con un nombre de símbolo. Posición posición billete. Llénelo cuando cambie y cierre una posición para su identificación clara. Normalmente coincide con el ticket de una orden utilizada para abrir la posición. Posición por el billete de posición opuesto. Se utiliza cuando se cierra una posición por una opuesta (abierta en el mismo símbolo pero en la dirección opuesta). MqlTradeTransaction también cuenta con los dos campos similares: posición billete de una posición afectada por la transacción. Se llena para transacciones relacionadas con el manejo de pedidos de mercado (TRADETRANSACTIONORDER excepto TRADETRANSACTIONORDERADD, donde todavía no se ha asignado un ticket de posición) y el historial de pedidos (TRADETRANSACTIONHISTORY). Posición por el billete de posición opuesto. Se utiliza cuando se cierra una posición por una opuesta (abierta en el mismo símbolo pero en la dirección opuesta). Se llena sólo para órdenes de cierre de una posición por una opuesta (cerca) y se ocupa cierre por una opuesta (por). La nueva función PositionGetTicket devuelve un ticket de posición mediante un índice en la lista de posiciones abiertas y selecciona automáticamente esa posición para un trabajo posterior con PositionGetDouble. PositionGetInteger. Y PositionGetString funciones. La nueva función PositionSelectByTicket selecciona una posición abierta para un trabajo adicional mediante un ticket especificado. PositionSelect selecciona una posición con un nombre de símbolo para trabajos adicionales usando PositionGetDouble. PositionGetInteger. Y PositionGetString funciones. En el sistema de cobertura (donde puede haber múltiples posiciones en un solo símbolo), la función selecciona una posición con el billete más bajo. La nueva propiedad ACCOUNTMARGINMODE permite recibir el modo de cálculo de margen y la contabilidad de posición en una cuenta comercial: Hedge Trading Systems for Forex Actualizado 19 de octubre 2016 Una cosa que siempre debe estar pensando como un comerciante de divisas es la gestión de riesgo de divisas. Administrar su riesgo puede tomar muchas formas, pero una forma es hacer cobertura. Hedging es esencialmente reducir o nivelar su riesgo mediante la realización de operaciones que potencialmente cancelar unos a otros en algún grado. Algunas regulaciones de divisas más recientes han eliminado la capacidad de cobertura directa con los operadores de Forex de EE. UU. Solía ser posible ir largo y corto en el mismo par en la misma cuenta. Esto todavía es posible con cuentas no basadas en los EE. UU., pero en los EE. UU., ya no se permite. Sin embargo, hay una solución de tipo que no es tan limpio, pero todavía existe como una cobertura. En Forex, todo el comercio se hace en parejas. Hay dos monedas implicadas en cada comercio. Vamos a decir que quería ir a lo largo de EUR / USD, pero le preocupaba en el corto plazo sobre la fortaleza del USD. Usted podría ir realmente largo en el par de USD / CHF también. Esto le daría una posición de USD largo para compensar cualquier pérdida en su posición EUR / USD. La desventaja es que usted tiene la exposición del CHF. Este es un círculo sin fin, no hay realmente tal cosa como un seto perfecto. Siempre será una especie de cobertura. Sin embargo, usted hace bajar su riesgo de USD haciendo estas operaciones. La cosa principal a recordar es que usted está compensando, por lo menos, un lado de su comercio. Digamos que usted había estado más preocupado por su exposición al euro. En ese caso, usted podría haber optado por ir un par corto como EUR / CHF. La habilidad en la creación de estos tipos de operaciones de cobertura es buscar un par que contiene la moneda que desea protegerse contra, pero lo ha emparejado con otra moneda que tiene un menor nivel de volatilidad. Por ejemplo, la cobertura con EUR / USD y EUR / JPY puede no ser una buena idea. El JPY ha sido conocido por ser muy volátil por sí solo. Sería peligroso tener una exposición desnuda. La última manera de hacer estos setos es ponerlos en los tiempos de riesgo y sacarlos cuando el riesgo disminuye. Por ejemplo, durante ciertos lanzamientos de noticias, como el empleo, las sorpresas pueden producir movimientos grandes. Tendría sentido poner su cobertura antes de la liberación y quitarla después. Tienes que recordar, sin embargo, que cuando se pone un seto que están neutralizando sus ganancias y pérdidas. Sus ganancias serán tan limitadas como sus pérdidas. Esto es lo que el Congreso de Estados Unidos pensó que estaban protegiendo contra cuando legislaron contra la cobertura directa. Si planea utilizar este tipo de estrategia para ayudar a controlar el riesgo, debe recordar que la comparación de lotes entre pares diferentes no siempre se romperá incluso en el valor de pip. Siempre depende de la conversión de divisas entre su moneda y los pares de divisas en cuestión, y en qué par es el par de bases en los pares que está negociando. El tamaño del lote en el primer par puede ser 10k, pero el segundo par puede ser ligeramente fuera si quería perfeccionar el seto, podría ser un número como 10.200k para ser perfectamente uniforme. Cobertura no es una ciencia perfecta, sólo uno que funciona bien para reducir el riesgo un poco en ciertas situaciones. Debe usarse sabiamente, y no debe considerarse una red de seguridad completa. La cobertura es una gran herramienta cuando se utiliza con prudencia, sobre todo cuando se combina con otras técnicas de gestión de riesgos como la colocación de una buena parada y el establecimiento de objetivos, puede ayudar a minimizar las pérdidas durante las sorpresas. ¿Has encontrado este artículo útil? Sientase libre de enviarme un correo electrónico en forextrading64aboutguide o sígueme en Facebook o Twitter para mantenerse al día con el nuevo sistema de negociación de trading forex 17 (305 pips Gig Flexi Hedge System) Enviado por Usuario el 17 de mayo de 2011 - 13: 32. Enviado por AtoMoore Timothy Hola, Mi nombre es AtoMoore. Tengo este sistema que hace al menos 150pips sobre la base diaria en el par EURUSD. Necesito críticos constructivos que pasen tiempo para entender el cerebro detrás de mi sistema antes de comentar. Ayudar a hacer de este sistema un asesino y tis para el bien de todos nosotros. Mi esperanza es el comercio de divisas como un negocio a tiempo completo. Whats yours Versión 1.0 Copyright 2011 Usted podría entrarme en contacto con en 233 278 1234 40 / tim. doxacapitalyahoo El sistema del abrigo de la flexión del gig es una estrategia intraday que es agresiva para los pips. El sistema ofrece una forma flexible de comercio de divisas haciendo uso de soporte de precios y niveles de resistencia en el mercado sin sacrificar la discreción. El sistema es flexible y esto es necesario por el comportamiento de los precios en las primeras 7 horas de cada día. El comportamiento de los precios en las primeras 7 horas de cada día presenta una variación que se negociará durante el día (y hablaré de estas variaciones pronto). Gig System Trade Setup: o 15 minutos Gráfico o Cálculo de puntos pivote o Líneas de tendencia dibujo o Canales o Promedio móvil (50SMA) Utilizo un margen de tiempo de 15 minutos porque permite capturar las mejores oportunidades de entrada y salida. Cuadro por hora, por ejemplo, cuando la señal es que ya es demasiado tarde para reaccionar / entrar. Cada mañana empiezo calculando pivotes frescos de medianoche a medianoche. Estudio el comportamiento de los precios en las primeras 7 horas del día. (Europa / Londres abierto alrededor de 7.30 a. m / 8 a. m GMT) Qué hago antes de 7amGMT en preparación para el Abierto de Londres: o Calcular y colocar los principales niveles de S / R en el gráfico de 15 minutos. O Comportamiento de los precios del estudio en relación con estos niveles, medias móviles, líneas de tendencia y el canal que normalmente se forma, entre la pausa de nuevo día y 7amGMT (Canal Inicial de la Mañana temprana - IEMC) o Revise mi calendario de noticias Forex forexfactory para próximas noticias o Place predictive trades Utilizando la orden pendiente y ocasionalmente el orden de mercado dependiendo del comportamiento de los precios entre el nuevo día de descanso y 7amGMT. O Comportamiento de precio entre el nuevo día de descanso y 7amGMT: o ¿Dónde el precio abierto en relación con el PP (punto de pivote), por encima o por debajo La respuesta a esto proporciona la primera pista a los comerciantes sesgos para el día. O Hizo la sonrisa del mercado una buena mañana Comercio largo para el día Si el mercado se abrió encima de PP oa una distancia pequeña lejos, encima de PP, busco la oportunidad de ir largo para el día. O Es el precio por encima de la media móvil o El mercado sonreír una buena mañana Comercio corto para el día Si el mercado se abrió por debajo de PP o una pequeña distancia de distancia, por debajo de PP, busco la oportunidad de ir corto para el día. O Es el precio por debajo de la media móvil o Hizo el mercado exactamente abierto PP o lejos de PP o El mercado se ha abierto un poco lejos del pivote. Ahora tiene el precio retirado a PP o Puede ser que no ha retirado entre este tiempo bajo consideración. El precio puede retroceder a PP más tarde en el día. Ahora puedes poner precio en un rango, un canal (IEMC) me enteré de que este rango podría persistir y podría ser comercializado. (Estrategia inicial del canal temprano de la mañana) o Tiene el precio zigzagueado a lo largo de PP ¿Cómo grande es la gama Puede usted poner un canal en él La carta antedicha es una carta EURUSD de 15 minutos que ilustra cómo se comportó precio desde el amanecer a 7amGMT el miércoles 21 de julio2010. Pivot y Major S / R obtenidos en virtud de los datos del día anterior incluyen: R31.3184, R21.3105, R11.2995, PP1.2916, S11.2806, S21.2727 S31.2617. Como se puede ver, la línea punteada representa la medianoche / amanecer del día anterior / día nuevo, 20/21 Julio 2010. La línea vertical aqua representa 7amGMT, es decir 7hrs después del amanecer nuevo. ¿Puedes ver el comportamiento de precios entre estos tiempos? El precio está en un canal de 34 pips (púrpura a púrpura). Este es mi canal de Early Morning temprano. Voy a ilustrar cómo comercializo tales canales bajo mi estrategia de Early Morning Channel inicial en una de mis variaciones. ¿Puede usted ahora predecir con cierta certeza la dirección del precio de aquí Este es un caso para mi estrategia VARIACIÓN 1A, y Ill mostrar cómo el comercio de este. Tengo un caso de variación1 cuando, como en el gráfico 1.0, el mercado se abre por debajo del precio desde el amanecer del nuevo día, se mantiene en algún tipo de consolidación hasta como 7amGMT, con lo que el precio, formando un canal negociable (IEMC) para nuestra estrategia. Si un nuevo día pasa como candidato para la variación 1A, negoto las siguientes estrategias: A. Estrategia inicial del canal de la mañana temprana B. Estrategia del nivel del pivote C. Estrategia apropiada del nivel principal de S / R (esta estrategia a veces se retrasa, Algún viaje en el día para validar la estrategia en este nivel.) Mirando el gráfico1.0, pondré los siguientes oficios: A. Estrategia de canal temprano de la mañana temprana lowerBand del canal: 1) Buy Limit. Precio de entrada 1.2874 Meta de beneficio 1.2906 (UpperBand of Channel) Beneficio 32pips 2) Sell Stop. Precio de entrada 1.2874 Objetivo de beneficio 1.2806 (S1) Beneficio 68pips UpperBand del Canal: 3) Límite de Venta. Precio de Entrada 1.2906 Meta de Beneficio 1.2874 (LowerBand of Channel) Beneficio 32pips 4) Buy stop. Precio de entrada 1.2914 i. e (1.29068pips) Objetivo de beneficio 1.2956 i. e (Midway b / n PP y R1) Beneficio 42pips B. Estrategia de nivel de pivote 5) Sell Limit. Precio de entrada 1.2908 i. e (1.2916-8pips) Objetivo de beneficio 1.2806 (S1) Beneficio 102pips 6) Buy stop. Precio de Entrada 1.2924 ie (1.29168pips) Meta de Beneficio 1.2956 ie (Midway b / n PP y R1) Beneficio 32pips C. Estrategia de nivel S / R apropiada (Nivel S1 en este caso) 7) Sell Stop: Precio de entrada 1.2806ie (S1 ) Beneficio Objetivo 1.2735 (S28pips) Beneficio 71pips Todas estas operaciones habrían producido: Beneficios totales: (32pips 68pips 102pips 32pips 71pips) 305pips 42pips de Buy Stop UpperBand IEMC Estrategia y 32pips de Buy Stop Pivot Nivel Estrategia no se registraron como estas operaciones no No se disparó. El gráfico de abajo el gráfico 1.1 muestra el comercio como sucedió en el manejo de dinero para esta estrategia: Con Instaforex / Con otros corredores 1 tamaño de lote mini (1pip) 1/1 tamaño de lote estándar (1pip) 10 es decir, 100 pips 100 / 100 pips 1000 20/100 0.2 tamaño de lote etc / 20/1000 Tamaño del lote 0.02 etc Probabilidad de conseguir un sentimiento del mercado justo 50. Diez (10) oficios, por lo menos, se colocará. Normalmente Probabilidad de operaciones activadas 8/10 80. Riesgo / Recompensa No. Win/No. Loss 5/3 166.67 I dobles tamaños de lotes para los oficios en la dirección del sentimiento del mercado para el día. Digamos, para los oficios en 500, mal uso un tamaño de lote de 0,40 2 (0,20) en InstaForex pero 0,04 tamaño de lote en otro tipo de cuenta estándar de plataformas de corredor. Yo uso lotes individuales para los oficios colocados en dirección opuesta al sentimiento del mercado del día. Digamos, para 500, mal uso un volumen de 0,20 en InstaForex, pero 0,02 en otro tipo de cuenta normalizada Plataformas Broker. Gig flexi-hedge sistema viene con diferentes grados de tamaños TP, dictado por el resultado de las distancias entre los puntos de pivote por lo que se trazan en el gráfico. Mi 5 WINS decir, 20pips 20pips 20pips 50pips 50pips, por decir lo menos. El comercio de la enfermedad diario, a tiempo completo, dos veces en una semana. ROI diario. 13 (lote doble) y 6 (lote único) ROI semanal. 27 (lote doble) y 13 (lote único) ROI mensual. 102 (lote doble) y 51 (lote único) Puede modificar algunos parámetros para sus propias expectativas tolerables. Este sistema tiene tantas variaciones dependiendo del comportamiento del precio de la rotura del nuevo día. Esto es sólo una variación. Los siguientes se seguirán en breve. Espero tener buenos críticos. Enviado por Navar el 12 de octubre de 2011 - 13:37. Buena estrategia. Simplemente pero no muy claro. Para entrar en la C. Estrategia de nivel de S / R apropiada, ¿pone otra parada de venta desatendida porque no siempre se puede controlar si ha superado la línea de soporte? Para calcular las líneas de soporte / resistencia hay varios indicadoder en Metatrader. Paso uno: Pívot diario Points. mq4. Tiene niveles intermedios entre soportes / resistencias: property indicatorchartwindow property indicatorbuffers 2 property indicatorcolor1 Blue property indicatorcolor2 Rojo // ---- parámetros de entrada extern int ExtFormula0 externo int ExtHowManyDays30 extern bool ExtDrawtrue // ---- buffers double ExtMapBuffer1 double ExtMapBuffer2 // -------------------------------------------------- ---------------- // Función de inicialización del indicador personalizado // -------------------------- ---------------------------------------- int init () // ---- indicadores SetIndexStyle (0, drawLine) SetIndexBuffer (0, ExtMapBuffer1) SetIndexEmptyValue (0,0.0) SetIndexStyle (1, drawLine) SetIndexBuffer (1, ExtMapBuffer2) SetIndexEmptyValue (1,0.0) // ---- tampones claras cuando reinicializar si (arraysize (ExtMapBuffer1) 0) ArrayInitialize (ExtMapBuffer1,0.0) si (arraysize (ExtMapBuffer2) 0) ArrayInitialize (ExtMapBuffer2,0.0) // ---- etiquetas fijas para Datawindow si (ExtDraw) si (ExtFormula0) SetIndexLabel (0, pivote) SetIndexLabel (1, NULL) SetIndexLabel (0, NULL) SetIndexLabel (0, Resistencia) SetIndexLabel (1, Support) else SetIndexLabel (0, NULL) // ---- carga de datos diaria de la carga iBars (NULL, PERIODD1) --- return (0) // ----------------------------------------- ------------------------- // Función de desinitialización del indicador personalizado // ----------------- ------------------------------------------------- int Deinit () // ---- borrar las líneas ObjectDelete (PivotLine) ObjectDelete (R0.5Line) ObjectDelete (R1.0Line) ObjectDelete (R1.5Line) ObjectDelete (R2.0Line) ObjectDelete (R2.5Line) ObjectDelete (R3. 0Line) ObjectDelete (S0.5Line) ObjectDelete (S1.0Line) ObjectDelete (S2.0Line) ObjectDelete (S2.0Line) ObjectDelete (S2.5Line) -------------------------------------------------- ---------------- // Función de iteración de indicador personalizado // -------------------------- ---------------------------------------- int start () int countedbarsIndicatorCount () int beginbar , Firstbar, lastbar, cnt doble ayer, ayer, ayer, cerrar hoy, hoyopen doble P, S, R, S05, R05, S10, R10, S15, R15, S20, R20, S25, R25, S30, R30 // ---- (-1) // si los datos diarios no se han cargado todavía cnt0 while (true) if (iTime (NULL, PERIODD1,0) si (ExtFormula 3) ) (Time0-PERIODD160)) break cnt if (cnt5) return (0) Sleep (1000) // ---- establecer inicio de comprobación si (ExtHowManyDays 0) beginbar0 // ---- for (cntbeginbar cnt0 cnt--) yesterdaycloseiClose (NULL, PERIODD1, CNT1) todayopeniOpen (NULL, PERIODD1, cnt) yesterdayhighiHigh (NULL, PERIODD1, CNT1) yesterdaylowiLow (NULL, PERIODD1, CNT1) P (yesterdayhigh yesterdaylow yesterdayclose todayopen) / interruptor 4 (ExtFormula) caso 1: RPP - Ayer, ayer, ayer, ayer, ayer, ayer, ayer, ayer, ayer, ayer, ayer, ayer, ayer, ayer, ayer, ayer, ayer, ayer, ) -1 si (cnt0) lastbariBarShift (NULL, 0, iTime (NULL, PERIODD1, cnt-1)) - 1 persona mientras lastbar0 (firstbarlastbar) si (firstbarlastbar amp lastbar0) descanso si (ExtFormula0) ExtMapBuffer1firstbarP demás ExtMapBuffer1firstbarR ExtMapBuffer2firstbarS firstbar-- P NormalizeDouble ((yesterdayhigh yesterdaylow yesterdayclose) / 3, dígitos) R10 NormalizeDouble ((2P) - yesterdaylow, dígitos) S10 NormalizeDouble ((2P) - yesterdayhigh, dígitos) R05 NormalizeDouble ((PR10) / 2, dígitos) S05 NormalizeDouble (( S15 NormalizeDouble (P10) / 2, Dígitos) R20 NormalizeDouble (P (yesterdayhigh-yesterdaylow), Dígitos) S15 NormalizeDouble (P10) 2, dígitos) R30 NormalizeDouble (2P (yesterdayhigh-2yesterdaylow), dígitos) S30 NormalizeDouble (2P - (2yesterdayhigh-yesterdaylow), dígitos) R25 NormalizeDouble ((R20R30) / 2, dígitos) S25 NormalizeDouble ((S20S30) / 2, dígitos ) ObjectCreate (PivotLine, OBJHLINE, 0, 0, P) ObjectSet (PivotLine, OBJPROPCOLOR, amarillo) ObjectSet (PivotLine, OBJPROPSTYLE, STYLESOLID) ObjectSetText (PivotLine, pivote DoubleToStr (P, dígitos)) ObjectCreate (R0.5Line, OBJHLINE, 0 , 0, R05) ObjectSet (R0.5Line, OBJPROPCOLOR, VerdeAmarillo) ObjectSet (R0.5Line, OBJPROPSTYLE, STYLEDOT) ObjectSetText (R0.5Line, R0.5 DoubleToStr (R05, dígitos)) ObjectCreate (R1.0Line, OBJHLINE, 0 ObjectSet (R1.0Line, OBJPROPCOLOR, YellowGreen) ObjectSet (R1.0Line, OBJPROPSTYLE, STYLEDOT) ObjectSetText (R1.0Line, R1.0 DoubleToStr (R10, Dígitos)) ObjectCreate (R1.5Line, OBJHLINE, 0 , R15) ObjectSet (R1.5Line, OBJPROPCOLOR, GreenYellow) ObjectSet (R1.5Line, OBJPROPSTYLE, STYLEDOT) ObjectSetText (R1.5Line, R1.5 DoubleToStr (R15, Dígitos)) ObjectCreate (R2.0Line, OBJHLINE, 0 , 0, R20) ObjectSet (R2.0Line, OBJPROPCOLOR, YellowGreen) ObjectSet (R2.0Line, OBJPROPSTYLE, STYLEDOT) ObjectSetText (R2.0Line, R2.0 DoubleToStr (R20, Dígitos)) ObjectCreate (R2.5Line, OBJHLINE, 0 ObjectSet (R2.5Line, OBJPROPCOLOR, GreenYellow) ObjectSet (R2.5Line, OBJPROPSTYLE, STYLEDOT) ObjectSetText (R2.5Line, R2.5 DoubleToStr (R25, Dígitos)) ObjectCreate (R3.0Line, OBJHLINE, 0 (R3.0Line, OBJPROPCOLOR, YellowGreen) ObjectSet (R3.0Line, OBJPROPSTYLE, STYLEDOT) ObjectSetText (R3.0Line, R3.0 DoubleToStr (R30, Dígitos)) ObjectCreate (S0.5Line, OBJHLINE, 0 ObjectSet (S0.5Line, OBJPROPCOLOR, Salmón) ObjectSet (S0.5Line, OBJPROPSTYLE, STYLEDOT) ObjectSetText (S0.5Line, S0.5 DoubleToStr (S05, Dígitos)) ObjectCreate (S1.0Line, OBJHLINE, 0 ObjectSet (S1.0Line, OBJPROPCOLOR, Salmon) ObjectSet (S1.0Line, OBJPROPSTYLE, STYLEDOT) ObjectSetText (S1.0Line, S1.0 DoubleToStr (S10, Dígitos)) ObjectCreate (S1.5Line, OBJHLINE, 0 ObjectSet (S1.5Line, OBJPROPCOLOR, Salmon) ObjectSet (S1.5Line, OBJPROPSTYLE, STYLEDOT) ObjectSetText (S1.5Line, S1.5 DoubleToStr (S15, Dígitos)) ObjectCreate (S2.0Line, OBJHLINE, 0 ObjectSet (S2.0Line, OBJPROPCOLOR, Salmon) ObjectSet (S2.0Line, OBJPROPSTYLE, STYLEDOT) ObjectSetText (S2.0Line, S2.0 DoubleToStr (S20, Dígitos)) ObjectCreate (S2.5Line, OBJHLINE, 0 ObjectSet (S2.5Line, OBJPROPCOLOR, Salmon) ObjectSet (S2.5Line, OBJPROPSTYLE, STYLEDOT) ObjectSetText (S2.5Line, S2.5 DoubleToStr (S25, Dígitos)) ObjectCreate (S3.0Line, OBJHLINE, 0 ObjectSet (S3.0Line, OBJPROPCOLOR, Salmon) ObjectSet (S3.0Line, OBJPROPSTYLE, STYLEDOT) ObjectSetText (S3.0Line, S3.0 DoubleToStr (S30, Dígitos)) ObjectsRedraw () // ---- return (0) // ----------------------------------- -------------------------------
No comments:
Post a Comment