Money Management Forex Books Mientras que el comercio de Forex está estrechamente conectado con el análisis de los gráficos y los indicadores fundamentales, saber dónde entrar y dónde salir de una posición no es suficiente. Los comerciantes profesionales manejan sus riesgos y dedican gran parte de su tiempo a aprender las técnicas de la gestión del dinero adecuada. Aquí usted puede encontrar algunos de los mejores e-libros de Forex sobre la gestión del dinero en el comercio financiero. Casi todos los libros electrónicos de Forex están en formato. pdf. Necesitará Adobe Acrobat Reader para abrir estos libros electrónicos. Algunos de los libros electrónicos (los que están en partes) son comprimidos. Si tiene problemas para descargar los libros y utiliza Google Chrome. Intente hacer clic derecho en el enlace de descarga de un libro y seleccione Guardar enlace como. Si usted es el dueño de los derechos de autor de cualquiera de estos e-libros y no quiere que yo los comparta, por favor, póngase en contacto conmigo y con gusto los removeré. Control de Riesgo y Gestión del Dinero 151 por Gibbons Burke. Gestión del dinero 151 Un capítulo de The Mathematics of Gambling. Efectos del dimensionamiento de la posición sobre el rendimiento del comerciante: un análisis experimental 151 por Johan Ginyard. Perfeccionamiento de su sistema de gestión de dinero 151 por Bennett A. McDowel. La gestión del dinero: controlando el riesgo y capturando ganancias 151 por Dave Landry, una guía corta pero educativa para la administración del dinero para los comerciantes financieros. Un libro de David Stendahl que trata de explicar el proceso mediante el cual los comerciantes pueden desarrollar, evaluar y mejorar el desempeño de sus sistemas de comercio basado en las estrategias de administración de dinero. El artículo de Murray A. Ruggiero Jr. de Futures Magazine explica las reglas y las ventajas básicas del control de riesgos y la administración del dinero. Money Trader es un asesor experto de MetaTrader desarrollado para ayudar a los operadores de Forex con las oportunidades comerciales de noticias que surgen durante los importantes lanzamientos macroeconómicos. La EA se puede utilizar para negociar la estrategia de la volatilidad de las noticias straddle. Es importante entender que News Trader no es una solución totalmente automática mdash un comerciante tiene que fijar la fecha y hora del comunicado de prensa y también para decidir sobre la apropiada stop-loss y take-profit. Sin embargo, ATR basado en stop-loss y tomar-beneficio configuración está disponible también. Este EA soporta el tamaño de posición flexible además del tamaño de posición fija habitual. Está disponible para las siguientes plataformas de negociación: MT4. MT5. Y cTrader. Operation News Trader abre una o dos operaciones (compra y venta por defecto) algún tiempo antes del anuncio de noticias (1 minuto por defecto). Aplica niveles stop-loss y take-profit de acuerdo con los parámetros de entrada dados por un comerciante. Si el comerciante lo solicita, la EA sigue modificando los niveles de stop-loss y take-profit hasta la publicación de las noticias para mantenerlas relevantes al precio actual. Cuando la noticia está fuera, el asesor experto se aplicará parada de arrastre de acuerdo a la elección del comerciante. Si una o ambas operaciones permanecen activas una hora (por defecto) después de las noticias, la EA las cierra. Ejemplo comercial La captura de pantalla del gráfico muestra la operación de EA durante y después de los informes mensuales de empleo de Estados Unidos y Canadá combinados con el informe de la balanza comercial canadiense. Las noticias salieron a las 8:30 EST el 4 de diciembre de 2015. Las entradas Buy and Sell se muestran con dos flechas apuntando a la derecha. Sus niveles de stop-loss están marcados con los guiones rojos arriba y abajo. Los niveles de toma-beneficio son los guiones azules. El tipo de cambio se disparó después de las noticias, la ejecución de la posición de venta stop-loss. Desafortunadamente, no alcanza la toma-beneficio del comercio de la compra. La posición se cierra por tiempo de espera una hora después del comunicado de prensa (flecha azul hacia la izquierda). El beneficio fue alrededor de tres veces la pérdida en este caso, que es bueno, pero no grande. Al parecer, podría ser más grande si se utilizara una ganancia más ajustada. Dimensionamiento de posición Noticias El asesor experto de Trader soporta dos modos de dimensionamiento de posición: tamaño de posición fija simple y tamaño de posición basado en el riesgo. El primer modo es muy simple mdash un operador acaba de introducir un volumen en lotes para ser utilizado con cada posición abierta por la EA. El segundo modo permite tanto el tamaño de posición fraccional fijo común como el tamaño de posición de riesgo de dinero fijo. Ambos utilizan el riesgo máximo tolerado dado como porcentaje o como dinero. ATR basado en stop-loss y toma de ganancias El asesor experto puede utilizar el indicador Average True Range para elegir automáticamente stop-loss y tomar-beneficios niveles de una base de comercio de noticias sobre la volatilidad anterior del par de divisas. El valor ATR se calcula en función del período dado. El stop-loss y take-profit se calculan a partir de multiplicadores separados antes de entrar en la apertura de una posición. Sin backtesting Debido a la naturaleza del EA de News Trader, no hay resultados de backtesting para ello. Parámetros de entrada Trading NewsTime mdash fecha y hora del comunicado de prensa para negociar. En cTrader, hay cinco parámetros independientes en su lugar: año, mes, día, hora y minuto. StopLoss (defecto 100) mdash la parada-pérdida en pips que se utilizará al abrir un comercio. Se ignora si UseATR es verdadero. TakeProfit (por defecto 500) mdash el take-profit en pips para ser utilizado al abrir un comercio. Recomiendo que se establezca al menos 5timesstop-loss. Se ignora si UseATR es verdadero. Dirección (predeterminada Ambos) mdash la dirección de la posición abierta para intercambiar las noticias. Puede ser de los cuatro tipos siguientes: Comprar mdash una posición de compra. Vender mdash una posición de venta. Tanto el mdash tanto comprar y vender posiciones. Random mdash una posición aleatoria. Notas: En MT5, la opción Both se denomina BothPending porque es imposible abrir dos posiciones opuestas para el mismo par de divisas en MT5, por lo que se utilizarán órdenes pendientes. En cTrader, la elección de la dirección es hecha por un comerciante usando tres parámetros de entrada separados (Buy. Sell. Randomize) ya que la plataforma no admite parámetros enumerados. TrailingStop (predeterminado Breakeven) mdash el tipo de trailing stop para usar con la posición. Puede ser el siguiente: Breakeven mdash el stop-loss se moverá a breakeven cuando el beneficio coincide con stop-loss. Full mdash parada clásica trailing que mueve el stop-loss hasta que el beneficio aumenta. Ninguna mdash no parada de arrastre. Notas: En cTrader, la selección de la parada final es realizada por un comerciante usando dos parámetros de entrada separados (Trailing Stop y Stop). Si Trailing Stop se establece en true. Se omite el parámetro Stop de equilibrio. PreAdjustSLTP (defecto false) mdash si es true. EA actualizará los valores de SL y TP de acuerdo con el precio actual después de abrir posiciones antes de que salgan noticias. SecondsBefore (por defecto 60) mdash el número de segundos antes del comunicado de prensa para abrir las posiciones. CloseAfterSeconds (predeterminado 3600) mdash el número de segundos después del comunicado de prensa para cerrar las posiciones. Se ignora si es cero. ATR UseATR (defecto false) mdash si es cierto. El indicador ATR determina los niveles stop-loss y take-profit. ATRPeriod (predeterminado 14) Mdash el período del indicador ATR, que se utiliza para el cálculo stop-loss y take-profit. Funciona solo si UseATR es verdadero. ATRMultiplierSL (predeterminado 1) Mdash un multiplicador para el valor del indicador ATR para obtener el valor stop-loss. Funciona solo si UseATR es verdadero. ATRMultiplierTP (valor predeterminado 5) mdash un multiplicador para el valor del indicador ATR para obtener el valor de aprovechamiento. Funciona solo si UseATR es verdadero. Gestión de dinero Lotes (valor predeterminado 0.1) tamaño básico del lote mdash para el tamaño de posición fija. Se utiliza cuando MM false. MM (defecto false) mdash si es cierto. El tamaño de posición flexible está habilitado. Riesgo (por defecto 1) mdash tolerancia al riesgo en porcentaje del saldo de la cuenta / patrimonio neto. Funciona solo si MM es verdadero. Este parámetro de entrada se ignora si UseMoneyInsteadOfPercentage está establecido en true. FixedBalance (valor predeterminado 0) mdash si se establece en valor distinto de cero, se utiliza en lugar del saldo de la cuenta / patrimonio para el cálculo del tamaño de la posición. Funciona solo si MM es verdadero. MoneyRisk (default 0) mdash tolerancia al riesgo en la moneda de la cuenta. Funciona solo si MM es verdadero. Requiere UseMoneyInsteadOfPercentage establecido en true. UseMoneyInsteadOfPercentage (defecto false) mdash si es cierto. El tamaño de la posición se calcula en función del monto del riesgo dado en la moneda de la cuenta (MoneyRisk) en lugar del riesgo de porcentaje de saldo / capital (Riesgo). Funciona solo si MM es verdadero. UseEquityInsteadOfBalance (defecto false) mdash si es cierto. El tamaño de la posición se calcula sobre la base del saldo de la cuenta en lugar del saldo. Funciona solo si MM es verdadero. Se ignora si UseMoneyInsteadOfPercentage es true. LotDigits (valor predeterminado 2) mdash número de decimales permitido por su corredor en el volumen del pedido. Por ejemplo, si su corredor permite micro lotes (0.01), entonces este parámetro debe ser 2. Si su corredor permite sólo mini lotes (0.1), este parámetro debe establecerse en 1. Requerido sólo si MM verdadero. Timer ShowTimer (true por defecto) mdash si es cierto. Se mostrará un temporizador de cuenta regresiva para el comunicado de prensa en la esquina superior izquierda del gráfico. FontSize (predeterminado 18) mdash el tamaño de fuente que se utilizará para la visualización del temporizador. Funciona solo si ShowTimer es true. No está presente en cTrader. Fuente (predeterminada quotArialquot) Mdash el nombre de fuente que se utilizará para la visualización del temporizador. Funciona solo si ShowTimer es true. No está presente en cTrader. FontColor (predeterminado clrRed) Mdash el color de fuente que se utilizará para la visualización del temporizador. Funciona solo si ShowTimer es true. No está presente en cTrader. Miscellaneous Commentary (default quotNewsTraderquot) mdash el comentario para las posiciones abiertas por este EA. Slippage (defecto 10) mdash el deslizamiento aceptable del precio en pips. Magic (por defecto 794823491) mdash el número mágico para órdenes de filtrar posiciones abiertas por este EA. No está presente en cTrader. MiniFAQ Qué noticias valen la pena negociar Cualquier gran noticia es buena para este EA: decisiones de la tasa de interés, lanzamientos de minutos del banco central, CPI, GDP, balanza comercial, informes del empleo, el más importante las noticias el mejor la ocasión de golpear toma-beneficio . ¿Qué stop-loss y take-profit debería establecer Recomiendo establecer 10 pips estándar stop-loss y 50 pips take-profit en noticias como GDP, CPI, o ventas minoristas. 15-20 pips stop-loss y 75-100 pips tomar-beneficio en noticias tales como FOMC tasa de decisión, FOMC minutos, o NFP. ¿Qué pares de divisas son buenos para News Trader? Puede funcionar con todos los instrumentos de negociación, pero recomiendo su uso con pares de divisas muy líquidos solamente: EUR / USD, GBP / USD, USD / CAD, NZD / USD, etc. En pares de divisas exóticas puede dar lugar a la ejecución prematura de stop-loss. ¿Cuál es la diferencia entre las versiones para MT4 y MT5 MT5 versión no puede abrir posiciones de compra y venta en el mismo par de divisas. En su lugar, abrirá órdenes pendientes que imitarán esas posiciones. Por desgracia, aumenta la exposición a la volatilidad del mercado mdash uso de la versión MT5 sólo con los corredores que usted conoce para una buena ejecución y no para ampliación anormal propagación. ¿Por qué mi pérdida real es mayor que el riesgo que establezco a través de parámetros de entrada cuando MM verdad? Hay tres posibilidades: EA ajustará stop-loss durante el período entre la apertura de posición y el lanzamiento de noticias si PreAdjustSLTP es verdadera. Puede resultar en una parada-pérdida más grande con el mismo tamaño de la posición, dando por resultado una pérdida potencial más alta. Cuando se usan dos posiciones (tanto Comprar como Vender), hay un pequeño riesgo de golpear stop-loss. En este caso, puede experimentar una pérdida dos veces su tamaño de riesgo original previsto. Intervalo de precios después de las noticias puede dar lugar a su stop-loss ejecución a un precio peor, la adición de pérdida adicional a la línea de fondo. Este EA es compatible con ECN. Debe establecer el parámetro de entrada ECNMode en true para habilitar la compatibilidad ECN para este asesor experto. De lo contrario, lo más probable es que vea mensajes OrderSend Error 130 cuando EA intentará abrir posiciones. Esto se debe a que, si está negociando con un corredor de ECN (con ejecución de mercado para órdenes), no puede establecer SL / TP en la apertura de posición. Primero tienes que abrir una posición sin SL / TP y solo modificarla, agregando stop-loss y / o toma-beneficio. Descargas MetaTrader 4 MetaTrader 5 cTrader Discusión Advertencia Antes de hacer preguntas básicas sobre la instalación de los asesores expertos, lea este MT4 Expert Advisors Tutorial para obtener los conocimientos elementales sobre su manejo. ¿Tiene sus propios resultados comerciales o cualquier otra observación con respecto a este asesor experto? Discutir comerciante de noticias con otros comerciantes y programadores MQL en los foros de expertos. MetaTrader 5 - Funciones de comercio para la gestión del dinero en un asesor experto Introducción El lenguaje MQL5 ofrece una oportunidad de obtener Una gran cantidad de información sobre las condiciones actuales del terminal. Del programa mql5. Así como el instrumento financiero y la cuenta de negociación. Con el fin de organizar las funciones de gestión del capital, tendremos que estudiar las propiedades de las dos últimas secciones enumeradas, así como familiarizarnos con las siguientes funciones: Obtener información sobre el saldo de su cuenta Las dos primeras características importantes de una cuenta de negociación - El saldo y la equidad. Para obtener estos valores, utilice la función AccountInfoDouble (). Lo siguiente que nos interesa es el tamaño de los fondos de depósito para posiciones abiertas y la ganancia o pérdida total flotante en la cuenta, para todas las posiciones abiertas. Para poder abrir nuevas posiciones o fortalecer las existentes, necesitamos recursos libres, no participando en el depósito. Cabe señalar aquí que los valores anteriores se expresan en términos monetarios. Los valores monetarios, devueltos por la función AccountInfoDouble (), se expresan en moneda de depósito. Para averiguar la moneda de depósito, utilice la función AccountInfoString (). El nivel de fondos personales La cuenta tiene otra característica importante: el nivel en el que se produce el evento Stop Out (un cierre obligatorio de posiciones debido a la escasez de fondos personales necesarios para mantener posiciones abiertas). Para obtener este valor, vuelva a utilizar la función AccountInfoDouble (): La función sólo devuelve el valor en sí, pero no explica en qué tipo de unidades se expresa este valor. Hay dos modos de especificación de nivel para Stop Out: en porcentajes y En moneda Para encontrar esto, utilice la función AccountInfoInteger (): Información adicional sobre la cuenta A menudo en los cálculos se requiere saber el tamaño de la proporcionada en el apalancamiento de la cuenta de negociación. Puede obtener esta información utilizando la función AccountInfoInteger (): Para evitar ejecutar accidentalmente el asesor experto no regulado en una cuenta real, debe conocer el tipo de cuenta. El comercio no es posible en cada cuenta, por ejemplo, en las cuentas competitivas, las operaciones comerciales sólo se puede hacer después del comienzo de la competencia. Esta información también puede obtenerse mediante la función AccountInfoInteger (): Incluso si se permite el comercio en esta cuenta, no significa que el Asesor experto tenga derecho a operar. Para comprobar si el Asesor Experto está autorizado a operar, escriba: Estos ejemplos se pueden encontrar en el Asesor de Expertos adjunto AccountInfo. mq5. Pueden ser utilizados en programas MQL5 de cualquier complejidad. Información sobre el instrumento Cada instrumento financiero tiene sus propias descripciones y se coloca en un camino que este instrumento caracteriza. Si abrimos la ventana de propiedades EURUSD en el terminal, veremos algo como esto: En este caso, la descripción para EURUSD es - EURUSD, Euro vs Dólar estadounidense. Para obtener esta información, utilizamos la función SymbolInfoString (): Para averiguar el tamaño de un contrato estándar, utilice SymbolInfoDouble (). Es una característica de los instrumentos FOREX vender una moneda mientras compra otra. El contrato se indica en la moneda, que es necesaria para realizar la compra. Esta es una moneda base y puede obtenerse utilizando la función SymbolInfoString (): Las variaciones de precio en el instrumento conducen a un cambio en el precio de un activo comprado y, por lo tanto, a una variación de utilidad para una posición abierta Ser negativo si la posición está perdiendo). Por lo tanto, el cambio de precio lleva a cambios en los ingresos, expresados en una moneda en particular. Esta moneda se llama moneda de cotización. Para un par de divisas EURUSD, la moneda base es generalmente el euro, y la moneda de cotización es el dólar estadounidense. Para obtener la moneda de cotización también puede utilizar la función SymbolInfoString (): Para abrir una posición en el instrumento necesita fondos y estos fondos también se expresan en una moneda determinada. Esta moneda se llama el margen o depósito de la moneda. Para los instrumentos FOREX, el margen y las monedas base suelen ser los mismos. Para obtener el valor de la moneda de depósito, utilice la función SymbolInfoString (): Todas las funciones descritas se proporcionan en el código del Asesor Experto SymbolInfo. mq5. La siguiente figura muestra la salida de información sobre el símbolo EURUSD, utilizando la función Comment (). Cálculo del tamaño del depósito La información sobre los instrumentos financieros, más necesaria para los comerciantes, es el tamaño de los fondos, necesarios para abrir una posición en él. Sin saber cuánto dinero se necesita para comprar o vender un número determinado de lotes, no podemos implementar el sistema de asesores expertos para la gestión de capital. Además, controlar el saldo de la cuenta también se hace difícil. Si tiene dificultades con la comprensión de la discusión más, le recomiendo que lea el artículo Forex Trading ABC. Las explicaciones que se describen en él también son aplicables a este artículo. Debemos calcular el tamaño del margen en el depósito en moneda, es decir, recalcular el depósito de la moneda hipotecaria a la moneda de depósito, dividiendo el valor obtenido por el monto del apalancamiento de la cuenta dada. Para ello escribimos la función GetMarginForOpening (): lote - el volumen del símbolo de posición abierta - el nombre del instrumento financiero la dirección de posición alegada. Así pues, tenemos la información siguiente para calcular el tamaño del margen (fondos monetarios para la hipoteca de la posición abierta): moneda del depósito moneda de la hipoteca Cotizaciones de la moneda (puede ser necesario para los pares cruzados de la moneda) el tamaño del contrato Escriba esto en el lenguaje MQL5: La variable de modo afecta cómo vamos a calcular el tamaño del contrato en la moneda de depósito. Considere esto basado en ejemplos, en todos los demás casos, supongamos que la moneda de depósito es el dólar estadounidense. Los pares de divisas normalmente se dividen en tres categorías: Pares de divisas directas: el tipo de cambio del dólar estadounidense a una moneda en particular. Ejemplos: USDCHF, USDCAD, USDJPY, USDSEK Reverse Currency Pair - el tipo de cambio de una moneda en particular al dólar estadounidense. Ejemplos: EURUSD, GBPUSD, AUDUSD, NZDUSD Pares de monedas cruzadas - un par de divisas, que no implica el dólar de los Estados Unidos. Ejemplos: AUDCAD, EURJPY, EURCAD. 1. EURUSD - el par de divisas inverso Vamos a llamar a los pares de divisas, en el que la moneda de cotización es la moneda de la cuenta, inversa pares de divisas. En nuestros ejemplos, la moneda de la cuenta se representa con el dólar estadounidense, por lo que nuestra clasificación de los pares de divisas coincidirá con la clasificación generalmente aceptada. Pero si su cuenta de comercio utiliza una moneda diferente (no USD), no coincidirá. En este caso, tenga en cuenta la moneda de la cuenta, con el fin de entender cualquier explicación adicional. El tamaño del contrato por EURUSD - 100 000 euros. Necesitamos expresar 100 000 euros en la moneda del depósito - dólares estadounidenses. Para hacer esto usted necesita saber el tipo de cambio, según el cual el euro puede ser contado en dólares. Introducimos la moneda de cálculo del concepto. Es decir, la moneda necesaria para convertir la moneda de la hipoteca en la moneda de depósito. Afortunadamente, el par de divisas EURUSD muestra el tipo de cambio del euro frente al dólar, y por lo tanto, para este caso, el símbolo de EURUSD, para el cual necesita calcular el tamaño de la hipoteca, es precisamente el tipo de cambio: Del modo como verdadero, lo que significa que para la transferencia de euros a dólares (moneda hipotecada es convertible en la moneda de depósito), vamos a multiplicar el tipo de cambio actual de EURUSD por el tamaño del contrato. Si el modo false, entonces dividimos el tamaño del contrato por el tipo de cambio de la moneda de cálculo. Para obtener los precios actuales en el instrumento, utilice la función SymbolInfoTick (). Esta función pone el precio actual y la hora de la última actualización de precios en la variable del tipo MqlTick - esta estructura fue diseñada especialmente para este propósito. Por lo tanto, basta con obtener el último precio de este símbolo, multiplicarlo por el tamaño del contrato y luego por el número de lotes. Pero, ¿qué precio de cálculo debemos tomar, teniendo en cuenta que hay un precio de compra y un precio de venta para este instrumento tan lógicamente: si estamos comprando, el precio de los cálculos es igual al precio Ask, y si estamos vendiendo, necesitaremos Tomar el precio de la Oferta. Por lo tanto, en nuestro ejemplo, para el símbolo EURUSD la moneda de depósito es Euro, el tamaño del contrato es de 100 000 y el precio de la última pregunta 1,2500. Moneda de cuenta - dólar estadounidense, y la moneda de cálculo es el mismo par de divisas EURUSD. Multiplicar 100 000 por 1,2500 y obtener 125 000 dólares de los EE. UU. - esto es exactamente lo mucho que un contrato estándar para la compra de 1 lote EURUSD es, si el precio Ask 1,2500. Podemos concluir que si la moneda de la cotización es igual a la moneda de la cuenta, entonces para obtener el valor de un lote de la moneda de la cuenta, simplemente multiplicamos el tamaño del contrato por el precio apropiado, Bid o Ask, dependiendo de la dirección prevista De la posición. 2. USDCHF - par de divisas directo La moneda de la hipoteca y la moneda de la cuenta para el par USDCHF - el dólar de los EE. UU. Los pares de divisas, en los que la moneda de la hipoteca y la moneda de la cuenta son los mismos, llamaremos pares directos de divisas. Tamaño del contrato - 100 000. Esta es la situación más simple, simplemente devolver el producto. Si la moneda de depósito coincide con la moneda de la cuenta, entonces el valor del depósito en la moneda de la cuenta es igual al producto del contrato estándar multiplicado por el número de lotes (contratos) dividido por el tamaño del apalancamiento. 3. CADCHF - par de divisas cruzadas El par de divisas de CADCHF se toma con fines ilustrativos, y cualquier otro par, en el que la moneda de depósito y la moneda de cotización coincidan con la moneda de cuenta, pueden ser utilizados. Estos pares de divisas se llaman cruzados, porque para calcular el margen y la ganancia en ellos, necesitamos conocer el tipo de cambio de algún otro par de divisas, que cruza con el de una de las monedas. Normalmente, los pares de divisas cruzadas son los pares, cuyas cotizaciones no usan el dólar estadounidense. Pero llamaremos a todos los pares, que no incluyen la moneda de la cuenta en sus cotizaciones, pares de divisas cruzadas. Por lo tanto, si la moneda de la cuenta es en euros, entonces el par GBPUSD será un par de divisas, ya que la moneda de depósito es en libras esterlinas y las cotizaciones de divisas están en dólares de los EE. UU. En este caso, para calcular el margen, tendremos que expresar la libra (GBP) en Euro (EUR). Pero seguiremos considerando un ejemplo en el que el símbolo es el par de divisas CADCHF. La moneda de depósito es en dólares canadienses (CAD) y no coincide con el dólar estadounidense (USD). La moneda de cotización es en francos suizos y tampoco coincide con el dólar estadounidense. Sólo podemos decir que el depósito para abrir una posición en 1 lote equivale a 100.000 dólares canadienses. Nuestra tarea es recalcular el depósito en la moneda de la cuenta, en dólares de los Estados Unidos. Para ello necesitamos encontrar el par de divisas, cuyo tipo de cambio contiene el dólar estadounidense y la moneda de depósito - CAD. Hay un total de dos opciones posibles: Tenemos los datos de salida para el CADCHF: No sabemos con anticipación cuál de los pares de divisas existe en el terminal, y en términos del lenguaje MQL5, ninguna opción es preferible. Por lo tanto, escribimos la función GetSymbolByCurrencies (), que para el conjunto dado de monedas nos dará el primer par de divisas coincidentes para los cálculos. Como puede verse en el código, comenzamos la enumeración de todos los símbolos, disponibles en la ventana Market View (la función SymbolsTotal () con el parámetro true nos dará esta cantidad). Con el fin de obtener el nombre de cada símbolo por el número en la lista de la Market View, usamos la función SymbolName () con el parámetro true Si ponemos el parámetro a false, entonces enumeraremos todos los símbolos presentados en el trading Servidor, y esto suele ser mucho más de lo que se selecciona en el terminal. A continuación, usamos el nombre del símbolo para obtener el depósito de moneda y las comillas y compararlos con los que se pasaron a la función GetSymbolByCurrencies (). En caso de éxito, devuelve el nombre del símbolo, y el trabajo de la función se completa con éxito y antes de lo programado. Si el bucle se completa, y llegamos a la última línea de la función, entonces nada encajar y el símbolo no se encontró, - devolver NULL. Ahora que podemos obtener la moneda de cálculo para el par de divisas, utilizando la función GetSymbolByCurrencies (), haremos dos intentos: en el primer intento, buscaremos el símbolo, cuya moneda de depósito es la margen de divisa CADCHF - CAD), y la moneda de cotización es la moneda de la cuenta (USD). En otras palabras, estamos buscando algo similar al par de CADUSD. Si el intento falla, intente encontrar otra opción: busque un símbolo, cuya moneda de depósito sea la moneda de cuenta (USD), y la moneda de la cotización sea margen de divisas (moneda de depósito para CADCHF - CAD). Estamos buscando algo similar al USDCAD. Ahora que hemos encontrado los cálculos par de divisas, puede ser una de las dos opciones - directa o inversa. La variable mode asume el valor true para el par inverso de divisas. Si tenemos un par de divisas directo, entonces el valor es igual a false. Para el valor verdadero, lo multiplicamos por el tipo de cambio del par de divisas, para el valor falso - lo dividimos por el valor de depósito de un contrato estándar en la moneda de la cuenta. Aquí está el cálculo final del tamaño del depósito en la moneda de la cuenta para la moneda de cálculo encontrada. Es apto para ambas opciones - el directo y el inverso pares de divisas. Devolver el resultado obtenido La función GetMarginForOpening () completa su trabajo en este punto. Lo último que hay que hacer es dividir el valor obtenido por el tamaño del apalancamiento proporcionado - y luego obtendremos el valor del margen para posiciones abiertas con el volumen especificado en la dirección asumida. Tenga en cuenta que para los símbolos, que representan el par inverso o el par de divisas, el valor del margen variará con cada marca. Esta es una parte del código del Asesor Experto de SymbolInfoAdvanced. mq5. El código completo se adjunta como un archivo. Y el resultado de su trabajo en la tabla. Conclusión Los ejemplos proporcionados demuestran lo sencillo y sencillo que es obtener información sobre las características más importantes de la cuenta de negociación y sobre las propiedades de los instrumentos financieros.
No comments:
Post a Comment