Detección de 5 dígitos - página 4

 
jjc:

Phy ha publicado un listado en MT4 para el futuro T-Note a 10 años que cotiza a 5DP: https://www.mql5.com/en/forum/109552/page3#195885. Cualquier cosa hasta 7DP existe potencialmente, es decir, es un atributo de un instrumento financiero ampliamente negociado.

No sabía que CB había reiniciado el hilo "¿Qué es un tick? Gracias! algunas cosas muy útiles allí... :)
 
cameofx:

- Tengo esta idea : dado el hecho de que los pares basados en Usd tienen un tickvalue de $US 10.00 fijo [.

El valor del tick sólo es fijo si su moneda de depósito es el USD (o, como generalización, si la moneda de cotización del símbolo coincide con su moneda de depósito). Por ejemplo, si su depósito es en GBP, el valor del tick de EURGBP es fijo mientras que el de GBPUSD es flotante.

 
jjc:

El valor del tick sólo es fijo si su moneda de depósito es el USD (o, como generalización, si la moneda de cotización del símbolo coincide con su moneda de depósito). Por ejemplo, si su depósito es en GBP, el valor del tick de EURGBP es fijo mientras que el de GBPUSD es flotante.

¿Cómo lo "anclamos" entonces si todo es relativo y flotante? Esto es lo que tengo hasta ahora..:
int start()
  {
   double validPoint = validPoint(Point);
   int SL = Ask - 25 * validPoint;
   int TP = Ask + 25 * validPoint;
   
   int ticket = OrderSend(Symbol(),OP_BUY,1,Ask,3,SL,TP,"My order",1234,0,Green);
   Print("ticket = ", ticket);

   return(0);
  }
  
double  validPoint(double p){

   int digitPoint = 0; int dP = 0; double vP = 0.0;
   double anchor_value; 
   
   for(double i=1.0; i>p; i/=10){
         digitPoint ++;
         if(i * MarketInfo(Symbol(),MODE_TICKVALUE) > anchor_value)
         {vP = i; dP = digitPoint; }
   }
   return(vP);
}
digitPoint se supone que se utiliza para identificar cuántos dígitos después del punto nuestro validPoint ocurre.
anchor_value : Todavía no estoy seguro de cómo calcular esto o si esto tiene sentido para el caso...

EDIT : el bucle estaba en la dirección equivocada...
 
Ok, ahora he encontrado un ejemplo mientras que el comercio de oro (XAUUSD). No es, ciertamente, un ejemplo de que el tamaño del Tick cambie espontáneamente, pero exhibe la implicación que me preocupó lo suficiente en el momento que me impulsó a publicar aquí.


El punto es 0,01, el valor del tick es 5,00, pero el tamaño del tick es 0,05.

Así que para tener una fórmula universal para calcular los tamaños de posición y reportar el riesgo, he sustituido...

MarketInfo(Symbol(),MODE_TICKVALUE)

con

(MarketInfo(Symbol(),MODE_TICKVALUE)*Punto)/MarketInfo(Symbol(),MODE_TICKSIZE)

...en las distintas fórmulas que utilizo.

Funciona como un sueño, y ahora tengo EAs que realizan la gestión del riesgo correctamente en todos los instrumentos.

CB

He citado esto del post de CB en 'Qué es un TICK' esto es interesante tal vez esto debería reemplazar la simple llamada Tickvalue en la ecuación...

PD: 7Bit, no quiero 'secuestrar' tu hilo... Espero que no te importe... :))

 
Hmm... o nadie cree que esto sea importante o puede que me haya desviado un poco del tema hasta .... por favor ayuda :(
 
¿alguien además de mí cree que esto vale la pena? Creo que sería conveniente para todos nosotros si pudiéramos encontrar una solución... ¿o tengo que publicar un tema aparte? ... por favor, aconsejen
 
cameofx:
¿alguien más aparte de mí piensa que esto vale la pena? Creo que sería conveniente para todos nosotros si pudiéramos encontrar una solución... ¿o tengo que publicar un tema aparte? ... por favor, aconsejen

Lo único para lo que MQL4 utiliza los Pips es para codificar el valor del Spread en las solicitudes de órdenes. Todo lo demás se especifica en términos de tasa. Una alternativa a considerar es utilizar las diferencias de tipos de cambio como parámetros de entrada para T/P, S/L, etc. Por ejemplo, especifique 0,0050 para un S/L de 50 pips. Esto funciona independientemente de los Dígitos, y sólo es necesario escalar por 100 cuando se detecta "JPY" en Symbol() como moneda de cotización. Esto es viable para los 21 pares principales (todas las combinaciones de USD, EUR, GBP, JPY, CHF, CAD, AUD) y probablemente también para los pares menores (que pocos operan debido a los mayores spreads). Si usted está realmente preocupado por la "prueba de balas", usted podría suministrar una cadena de divisas y el multiplicador como parámetros de entrada (como JPY y 100). Esto se puede ampliar para los exóticos también con diferentes corredores.

Realmente creo que esto es en gran medida un punto mudo con la mayoría de los codificadores de MQL4; cuando implementan con éxito y depurar un algoritmo de comercio rentable, lo utilizarán en su propia cuenta real. Pocos querrán venderlo o regalarlo porque el mercado probablemente se ajustará para contrarrestar el algoritmo.

 
andydcoles:

Lo único para lo que MQL4 utiliza los Pips es para codificar el valor del Spread en las solicitudes de órdenes. Todo lo demás se especifica en términos de tasa. Una alternativa a considerar es utilizar las diferencias de tipos de cambio como parámetros de entrada para T/P, S/L, etc. Por ejemplo, especifique 0.0050 para un S/L de 50 pips. Esto funciona independientemente de los Dígitos, y sólo es necesario escalar por 100 cuando se detecta "JPY" en Symbol() como moneda de cotización. Esto es viable para los 21 pares principales (todas las combinaciones de USD, EUR, GBP, JPY, CHF, CAD, AUD) y probablemente también para los pares menores (que pocos operan debido a los mayores spreads). Si usted está realmente preocupado por la "prueba de balas", usted podría suministrar una cadena de divisas y el multiplicador como parámetros de entrada (como JPY y 100). Esto se puede ampliar para los exóticos también con diferentes corredores.

Realmente creo que esto es en gran medida un punto mudo con la mayoría de los codificadores MQL4; cuando se implementan con éxito y la depuración de un algoritmo de comercio rentable, que va a utilizar en su propia cuenta real. Pocos querrán venderlo o regalarlo porque el mercado probablemente se ajustará para contrarrestar el algoritmo.

Esto. Personalmente no trabajo en pips, trabajo en puntos. Todos los datos del precio se dan en puntos. La diferencia entre dos valores de precios está en puntos. Mi stoploss y mi punto de salida están en puntos... son un precio de mercado específico. La noción de pips es interesante, pero como la mayoría de los presentes puede atestiguar, una vez que intentas unir la noción de pips con la de puntos, pierdes rigor y solidez, ¿y para qué?

Nunca he tenido que lidiar con el cambio del número de dígitos significativos en el precio porque codifiqué todas mis ecuaciones para ser auto-consistente con las especificaciones de marketinfo del broker. No pienso en el stoploss en términos de pips, para mí es en términos de porcentajes y precios y valores reales determinados por el mercado.

Comencé mi vida en el mercado de divisas pensando en pips, naturalmente, ya que el mantra es frecuente en casi todas las piezas de la literatura en línea y la fuente educativa que se encuentra. Pero una vez que empecé a desafiarme a mí mismo y a la noción de que los pips eran una construcción mental necesaria para gestionar mis operaciones, descubrí que era más bien una barrera que ahogaba mi creatividad y mis opciones.

Un pip no es algo fundamental para el trading, es una muleta para empezar, pero si nunca vuelves a él e investigas el propósito de su existencia, entonces te robas la oportunidad de ir más allá de ese primer nivel en la curva de aprendizaje de Forex (sólo mi opinión, por supuesto).

 

Este es el mayor tema que domina este foro con diferencia. No lo entiendo y probablemente nunca lo haré. ¿Qué sentido tiene o qué punto tiene? A quién le importa. Una de las razones por las que me está empezando a gustar la programación es porque si no puedes definir algo, se vuelve casi imposible programarlo IMO. Si un grupo de programadores están pasando por 3 páginas de post para definir un pip/punto. Entonces mejor me mantengo alejado de ello por ahora.

La definición parece importante para un desarrollador que quiere programar un programa comercial estándar y quiere que el usuario tenga la flexibilidad de imputar exactamente cuántos dólares quiere arriesgar. Para la mayoría de nosotros, nuestros propósitos de gestión de dinero, sin embargo, en combinación con las pérdidas de la parada óptima no proporciona tal flexibilidad.

Ejemplo: Empiezo con 2000 dólares y quiero arriesgar exactamente el 2% de ese capital. Sin embargo el sistema que acabo de optimizar tiene un stop loss de 130 puntos. Y el lote más bajo con el que puedo trabajar es de 10.000 donde punto = 1$. Aquí tenemos un verdadero dilema. Tendré que buscar un broker que ofrezca lotes más pequeños o esperar a tener más dinero para operar. E incluso entonces lo único que puedo controlar es el tamaño del lote. Casi nunca podría igualar exactamente el 2% de cualquier bankroll con el stop loss de mi sistema. Todo lo que puedo hacer es especificar el tamaño del lote de una manera redonda.

 
ubzen:

Si un grupo de programadores se pasan 3 páginas de post para definir un punto o pip [...] ¿Qué es un punto o pip? ¿A quién le importa?

... No es justo. Es más, cada uno tiene una opinión diferente, y las 3 páginas consisten en un montón de respuestas diferentes de dos líneas.

Tanto tú como phillip tenéis un punto muy válido, con una excepción - pero una excepción que creo que es la razón por la que 7bit abrió el tema en primer lugar.

Si estás construyendo un sistema para que otras personas lo usen, no sólo para ti, entonces la capacidad de introducir valores en pips es una consideración importante para la facilidad de uso. El apostador medio sabe lo que quiere decir con 50 pips, pero tiene que pensar mucho, y comprobar dos veces, si quiere decir un valor de 0,005 en lugar de 0,0005 o 0,05 o lo que sea. La posibilidad de introducir los parámetros en pips coincide con la forma de pensar de la mayoría de los usuarios finales en el mundo de las divisas, y reduce los errores. También ofrece la posibilidad de poder utilizar los mismos valores de parámetros en símbolos de 2/3 y 4/5 dígitos. No tengo mucha exposición a los EAs comerciales del mercado de masas, pero nunca he visto uno en el que dichos parámetros se introdujeran como un diferencial de precio en lugar de un valor en pips.