Operaciones simultáneas con diferentes horarios
Forums › ProRealTime foro Español › Soporte ProOrder › Operaciones simultáneas con diferentes horarios
- This topic has 12 replies, 3 voices, and was last updated 5 years ago by Fran55.
-
-
09/14/2019 at 5:46 PM #107544
Hola Juan.
A ver… Tengo una estrategia en la que se opera de 9:00 a 10:00, de 12:00, de 15:00 a 16:00 y de 20:00 a 21:00.
Si hago backtests por separado de los horarios de hacen 60 operaciones buenas y 10 malas.
Si junto esas horas en un backtest hacen 49 buenas y 10 malas.
El problema creo que es que al estar ya dentro del mercado en una operación que entra de 09:00 a 10:00, si debería entrar en otra operación entre las 15:00 a 16:00 no entra porque está ya dentro con la primera posición.
El sistema “se come” 11 operaciones buenas.
09/14/2019 at 5:56 PM #107546Gracias Juan!.
Se me ha ocurrido:
VariableA=09:00 to 10:00
VariableB=15:00 to 16:00
If countofposition = 1 and VariableA or VariableB then
De esta manera si ya está dentro del mercado con una posición desde las 09:00 to 10:00 podría entrar con otra posición entre las 15:00 to 16:00… Porque sino no entra con la segunda posición.
O algo así… Lo tengo que comprobar… No sé.
Se programar un poco… Pero no demasiado.
09/14/2019 at 6:03 PM #10754712345once ps = 0if (your conditions) thenps = ps + 1buy ps contracts at marketendifTambien tengo un problema con este código para piramidar operación a operacioni que me escribió Vonasi.Lo intento en vez de con 1 con 0.1… y a veces lo hace de 0.1 en 0.1, pero a veces se lo salta y salta 0.2 o 0.3 o incluso 0.5… ?tal vez con Round o ABS???09/15/2019 at 8:55 PM #107615Hola Fran55,
1.Cuando incluyas partes de códigos, tienes que utilizar la tecla de arriba a la derecha (insert PRT code), para que el código se vea correctamente. Gracias.
2.Me alegro que hayas encontrado una solución a tu estrategia. Tienes que ver que opción te viene mejor (si entrar de forma separada por franjas horarias o acumular con una sola estrategia)
3.El trozo de código de Vonasi, como el dice puede resultar agresivo y arriesgado. Debes incluirle una limitación al numero de contratos para que no se te desboque la operativa.
123456once ps = 0maxcontracts=5if (your conditions) and countofposition<maxcontracts thenps = ps + 1buy ps contracts at marketendif4.Prueba a utilizar round e inicialmente posiciones mayores que 1. No estoy seguro si puedes realizar operaciones con 0.1 posiciones. IG no permite microcontratos con PRT.
Saludos
09/15/2019 at 10:35 PM #107618Hola Juan!
Precisamente esa es la solución y el problema.
Lo que quiero es que haga todas las operaciones en una estrategia.
Por separado hacen en total 93 buenas y 11 malas y gana unos 6000€.
Pero si junto los horarios en la misma estrategia hace 90 buenas y 11 malas y gana 4600€
El caso es que el número de operaciones es parecido, pero gana 1400€ menos.
El código de Vonasi no funciona bien.
Lo que quiero es una primera operación a 1€ pip… La segunda operación a 1.1€ pip… La tercera a 1.2€… la cuarta a 1.3€ pip… Y así sucesivamente.
El código de Vonasi pasa de 1€ a 1.09, de 1.09 a 1.19, de 1.19 a 1.39, luego hace 2 o 3 seguidas a 1.49, y luego salta a 1.79… no lo hace de 0.10 en 0.10, y no sé cuál es el problema.
He probado con Round y ABS pero sigue igual.
Gracias Juan!
09/15/2019 at 10:36 PM #10761909/15/2019 at 11:05 PM #107620Fran55,
A veces es difícil entender que es lo que quieres si no pones un ejemplo gráfico. Tú lo tienes claro en tu mente, pero para mi es difícil a veces adivinarlo. No te pido que pongas tu código. No es necesario, pero al menos un ejemplo de lo que haces para que pueda ver como modificarlo, o darte una alternativa.
En cuanto al código de Vonasi, es algo genérico. Aumenta las posiciones siempre con un mismo patron. Si quieres que aumentes un contrato cada vez que se den “tuscondiciones” funciona, por lo que creo que debe ser debido al incremento que quieres cada vez que se den “tuscondiciones”.
Te propongo algo mas manual y rudimentario para aumentar las posiciones justo en la cadencia que tu quieras.
1234567891011121314ONCE numcontratos=1ganada1=positionperf(1)>0ganada2=positionperf(2)>0 AND positionperf(1)>0ganada3=positionperf(3)>0 AND positionperf(2)>0 AND positionperf(1)>0IF ganada1 THENnumcontratos=1.2ENDIFIF ganada2 THENnumcontratos=1.3ENDIFIF ganada3 THENnumcontratos=1.4ENDIFEste es un ejemplo mas rudimentario, pero puedes controlar perfectamente el numero de contratos, cuando se cumplen las condiciones que quieras. En este caso he puesto que cada vez que ganas una operación, se aumenta el numero de contratos como tu decidas. Como la piramidacion debe de tener un limite, por pura precaución, confeccionar un ejemplo como este, pero hasta veinte operaciones ganadas no te costará nada.
Yo lo utilizo cuando quiero aumentar los contratos de forma controlada ( a veces los incremento en escala fibonacci para crear una martingala suave; 1, 2, 3, 5, 8, etc)
En vez de operaciones ganadas, puedes por supuesto poner las condiciones que tu desees
Saludos
09/15/2019 at 11:43 PM #107630OK.
La primera imagen es operando de 10 a 11 en una estrategia… hace 14 buenas, ninguna mala… gana 752€.
La segunda imagen es operando de 11 a 12 en una estrategia… hace 13 buenas, 1 mala… gana 518€.
La tercera imagen es operando de 10 a 12 en una sola estrategia… hace 24 buenas, 1 mala… gana 1238€.
Faltan 3 operaciones buenas y unos 42€ de ganancia.
Claro son solo 2 horas, si meto mas horarios, mas operaciones faltan y mas ganancia falta.
Creo que lo que sucede es que si ya hay una operacion abierta entre las 10 y las 11 y en curso, si las condiciones de compra se dan tambien entre las 11 y las 12 no abre otra operacion… y no vale cumulateorders=true, ya lo he probado y los resultados no son ni parecidos.
Respecto al codigo que me has especificado, igual es demasiado rudimentario, si voy a hacer 300 operaciones (un suponer) me tiro un mes escribiendo codigo.
Gracias!!!
09/15/2019 at 11:44 PM #10763109/15/2019 at 11:45 PM #10763309/15/2019 at 11:46 PM #10763409/15/2019 at 11:47 PM #10763609/21/2019 at 6:51 PM #108125 -
AuthorPosts
Find exclusive trading pro-tools on