Página 1 de 1

Estrategia en Jforex

Publicado: 28 Ago 2013 16:40
por Yago
Hola a todos. Estoy intentando programar una estrategia en jforex para que me cierre todas las ordenes cuando el beneficio llegue a un porcentaje determinado respecto al margen. Hasta ahora he encontrado unas rutinas para poder cerrar todas las ordenes abiertas , pero me falta por determinar la condicion para ejecutarlas. Si alguien sabe como y donde deberia de introducir la condicion se agradeceria.

Re: Estrategia en Jforex

Publicado: 28 Ago 2013 21:20
por mascara
Hola,

Yo lo haría en el método onBar, comprobando que el periodo que te venga sea de, por ejemplo, un segundo (o la frecuencia con la que quieras comprobar entre los periodos posibles...).
Algo como (va de memoria porque no estoy ahora dentro del editor de jforex...)
IF (period.equals(Period.ONE_SEC)){
...
}

Creo que sería mejor en el onBar que en el onTick porque imagino que no necesitas tanta exactitud como para comprobar en cada tick... pero sería igual hacerlo en uno o en otro, lo que pasa que en el onTick no necesitas poner el filtro del periodo...

Ahora, la condición, necesitarías obtener por un lado el margen y por otro el beneficio de las órdenes abiertas.
Para lo del margen, no sé exactamente ahora a que dato te refieres, pero podrías mirar algunos métodos el objeto IAccount, como getEquity, getBalance, getBaseEquity, getCreditLine, getUseOfLeverage, etc... entre tantos alguno tendrá que valer para sacar directamente lo que quieres o para usarlo y calcular tú el dato que necesitas :)...

Para el beneficio podrías usar un bucle como este:
double pl = 0;
for(IOrder o : engine.getOrders())
pl = pl + o.getProfitLossInAccountCurrency(); //restar o.getCommissions() si quieres tener en cuenta las comisiones

Bueno, no se si te habrá ayudado porque es muy general... :roll:

Saludos,

Re: Estrategia en Jforex

Publicado: 29 Ago 2013 10:55
por Yago
Gracias de nuevo mascara. Pensaba que era mas directo los calculos. Al final me ha servido mucho tu ayuda. El calculo del margen usado lo hice calculando getEquity-getCreditLine/getleverage, ahora voy a probarlo a ver si funciona.
Gracias.

Re: Estrategia en Jforex

Publicado: 29 Ago 2013 16:45
por ubeconbe
Por cierto tenéis algún link con un tutorial bastante extenso? porque en la web de dukascopy los que hay son muy por encima (almenos los que he visto yo), gracias

Re: Estrategia en Jforex

Publicado: 29 Ago 2013 18:03
por Yago
Lo siento pero yo solo conozco lo que viene en dukascopy.

Re: Estrategia en Jforex

Publicado: 29 Ago 2013 18:44
por mascara
Yago escribió:Gracias de nuevo mascara. Pensaba que era mas directo los calculos. Al final me ha servido mucho tu ayuda. El calculo del margen usado lo hice calculando getEquity-getCreditLine/getleverage, ahora voy a probarlo a ver si funciona.
Gracias.
Me alegro, no se si sabes que el objeto IAccount no siempre lleva la información actualizada, se actualiza cada 5 seg. más o menos, por lo que dice la documentación... espero que aún así te funcione como quieres

Re: Estrategia en Jforex

Publicado: 30 Ago 2013 13:30
por Yago
Supongo que no sera problema excepto cuando haya mucho meneo, probare .
Gracias por la informacion