MT5 y trans2quik.dll - página 9

 
prostotrader:

"Termial" (un grupo de asesores) en acción.

Hoy se han realizado las primeras operaciones sobre el real.


¿Bono sintético?

Especialmente para esto abrí EBS en la apertura. Hice un robot en lua en QuickBooks. Pero en el % no resultó mejor que la simple compra de Bonos. Por eso lo dejé.

 

el tipo de interés actual es el siguiente (tasas e impuestos incluidos)

contango

 
Volokola:

¿Bono sintético?

Especialmente para esto abrí EBS en la apertura. Hice un robot lua en QuickBooks. Pero en el %, resultó no ser mejor que comprar simplemente OFZs. Por eso lo dejé.

Supongo que tendré que dejarlo también, una pena....

Añadido por

Pero por tu tabla está claro que no cuentas algo correctamente (mi porcentaje es mucho mayor, aunque incluso cuento el porcentaje cuando el dinero vuelve en 15 días)

 
Yuriy Asaulenko:

Retrasos en la construcción de una tabla, cat a través del DDE.

Inserta algún print() en el programa, y siente la diferencia).

Por supuesto, es malo que se retrase, pero no es un problema (el límite no se ejecuta a tiempo, no importa, funcionará la próxima vez).

¡Lo peor es que el propio trans2quik.dll es un PROBLEMA!

Cuando hay una orden de venta de futuros, no envía datos al DDE, sino que espera respuesta de trans2quik.dll.

y se ejecuta una operación de pseudo mercado (no se pueden comprar acciones en el mercado)

En la imagen se puede ver que más de 200 ms más tarde hubo un comercio de respuesta (trabajando sólo con trans2quik.dll)

Esta es una cuenta real.

 
prostotrader:


Pero tu tabla muestra que estás contando algo mal (mi porcentaje es mucho mayor, aunque incluso estoy contando el porcentaje cuando se devuelve el dinero a los 15 días)

He contado y recalculado todo.

Puedes ver todo en la tabla:

tomamos la oferta de los futuros+la demanda de la acción.

Gazprom: 16753 = 165,78

Diferencial "sucio" = 175 rublos (o 0,9% del depósito = futuros GO + precio de las acciones)

comisión = 27 rublos

consiste en

brok_comiss_mmvb=0.06 -en % de comisión del broker en MICEX

brok_comiss_forts=1.00 -- en % de comisión del broker sobre FORTS. Rublos por contrato y por ronda.

comiss_mmvb=0.009 -- en % comisión de Bolsa en MICEX

comiss_forts=0.006 -- en % comisión de Bolsa sobre FORTS


el porcentaje puede haber cambiado ligeramente ahora.

y menos el 13% = 129rub spread "puro" (0,66% de mi depósito)

50 días hasta el vencimiento = 129/50*365 = 940rub o el 4,81% del depósito que asciende a 19537rub

****

Si hay un error = le agradecería que lo señalara.


 
Volokola:

Todo contado y recalculado.

La tabla muestra todo:

tomamos la oferta de futuros + la acción.

gazprom: 16753 = 165,78

Diferencial "sucio" = 175 rublos (o el 0,9% del depósito = futuros GO + precio de las acciones)

comisión = 27 rublos

consiste en

brok_comiss_mmvb=0.06 -en % de comisión del broker en MICEX

brok_comiss_forts=1.00 -- en % de comisión del broker sobre FORTS. Rublos por contrato y por ronda.

comiss_mmvb=0.009 -- en % comisión de Bolsa en MICEX

comiss_forts=0.006 -- en % de comisión de Bolsa sobre FORTS


el porcentaje puede haber cambiado ligeramente ahora.

y menos el 13% = 129rub spread "puro" (0,66% de mi depósito)

50 días antes del vencimiento = 129/50*365 = 940 RUB o el 4,81% del depósito que asciende a 19537 RUB.


Tengo estos encargos para Gazprom


Añadido

A estas comisiones (teniendo en cuenta que se quedarán con mis fondos (13%)) + 1 día de vencimiento (para operar el último día)

Esto es lo que resulta

Añadido

Las comisiones de vencimiento son diferentes para los distintos instrumentos

if (Pos('(SBERP)', aNAme) > 0) then BiExpEdit.Text:= '0,5' else
  if (Pos('(MOEX)', aNAme) > 0) then BiExpEdit.Text:= '1,0' else
  if (Pos('(SBER)', aNAme) > 0) then BiExpEdit.Text:= '1,0' else
  if (Pos('(TATN)', aNAme) > 0) then BiExpEdit.Text:= '1,0' else
  if (Pos('(VTBR)', aNAme) > 0) then BiExpEdit.Text:= '1,0' else
  if (Pos('(HYDR)', aNAme) > 0) then BiExpEdit.Text:= '1,0' else
  if (Pos('(AFLT)', aNAme) > 0) then BiExpEdit.Text:= '1,0' else
  if (Pos('(MGNT)', aNAme) > 0) then BiExpEdit.Text:= '1,6' else
  if (Pos('(TRNF)', aNAme) > 0) then BiExpEdit.Text:= '4,0' else
    BiExpEdit.Text:= '2,0';
 
Envíeme su fórmula de cálculo y la compararé con la mía
 
prostotrader:

Por supuesto, es malo que se ralentice, pero no es un problema (el límite no se ejecuta a tiempo, lo que sea, funcionará la próxima vez).

¡Lo peor es que el propio trans2quik.dll es un PROBLEMA!

Cuando hay una orden de venta de futuros, no envía datos al DDE, sino que espera respuesta de trans2quik.dll.

y se ejecuta una operación de pseudo mercado (no se pueden comprar acciones en el mercado)

En la imagen se puede ver que hubo un acuerdo de respuesta después de 200 ms (sólo trans2quik.dll está trabajando)

No negocio por límites de mercado (sólo manos, ocasionalmente) - hay hasta cien operaciones por segundo, está claro que el precio va a ir, y sólo Dios sabe cuánto tiempo hay que esperar.

Las ofertas de compra un poco más altas que el mercado, las ventas un poco más bajas, bueno, + el deslizamiento - serán ejecutadas por el cristal del mercado, en general, al instante. En principio, puede utilizar los límites, pero hacer el precio +/- 5-7 puntos al mercado de futuros.

Y sobre trans2quik.dll. ¿Probablemente lo utilices en modo síncrono? Entonces sí, hay que esperar la respuesta. En el modo asíncrono no hay que esperar nada: sólo hay que disparar y olvidarse). Resultado por evento o solicitud.

 
Yuriy Asaulenko:

No negocio por límites de mercado (sólo con las manos, ocasionalmente) - hay hasta cien operaciones por segundo, está claro que el precio se irá, y sólo Dios sabe cuánto tiempo hay que esperar.

Las ofertas de compra un poco más altas que el mercado, las ventas un poco más bajas, bueno, + el deslizamiento - serán ejecutadas por el vidrio del mercado, en general, al instante. En principio, puede utilizar los límites, pero hacer el precio +/- 5-7 puntos al mercado de futuros.

Y sobre trans2quik.dll. ¿Probablemente lo utilices en modo síncrono? Entonces sí, hay que esperar la respuesta. En el modo asíncrono no hay que esperar nada: sólo hay que disparar y olvidarse). Resultado por evento o solicitud.

Los futuros SOLO deben venderse mediante una orden de Límite - bien, no - bien, lo que sea, espere a la siguiente corrida.

No, trans2quik.dll está en asíncrono

Añadido

Permítanme explicar por qué esta es la forma correcta de operar.

La densidad de los tipos al contado (incluso para los instrumentos poco líquidos) es muy alta, mientras que la

y la densidad de los futuros es débil, por lo que vendemos los futuros estrictamente al límite (al precio que necesitamos), y el

El SPOT es un pseudomercado.

 
prostotrader:

Supongo que tendré que dejarlo también, una pena....

Añadido

Pero por tu tabla parece que estás contando algo mal (mi porcentaje es mucho mayor, aunque incluso estoy contando el porcentaje cuando el dinero se devuelve en 15 días)

Hizo tal EA en MT5 puro. Lo probé en tester basado en ticks reales, todas las operaciones están en el mercado. Aunque si utilizo la orden de límite en el comercio real el resultado debería ser mejor.

Se han considerado las comisiones, no se han tenido en cuenta los impuestos. Esto es lo que he obtenido para la GAZP:

Casi un 10% durante un mes.

p.d. si alguien está interesado, puedo ponerlo en mi kodobase