Buscar:

Lanzar orden de entrada API FXCM

Hola,

Hoy voy a explicar como desde Java se puede lanzar una orden de entrada o Entry Order (en inglés), utilizando la API gratuita de FXCM llamada Order2Go.

Nota: Para poder utilizar desde java la API, es necesario tener instalado la plataforma de operaciones y una libreria llamada JACOB que es un puente entre COM y Java, ya que la API que proporcionan gratuitamente es un componente de Microsoft COM.

La librería Jacob (JAVA-COM Bridge) se puede descargar de los siguientes sitios:
http://danadler.com/jacob/
http://sourceforge.net/projects/jacob-project/

La plataforma de operaciones se puede descargar de FXCM al igual que la API Order2Go
http://www.fxcm.com/
http://www.fxcmespanol.com/

La API de FXCM posee un método llamado CreateEntryOrder, que sirve para lanzar una orden de entrada. Esto quiere decir que se puede poner una orden la cual entrará en el mercado cuando cumpla ciertas condiciones, como por ejemplo alcanzar un precio determinado.

Ejemplo de invocación desde JAVA:

Variant entryOrder1 = null;
Variant entryOrder2 = null;
String sAccountName = “xxxxxxxx”; // Numero de cuenta. Se puede obtener desde la plataforma de operaciones.
String sInstrument = “EUR/USD”;
// Calculamos datos para la orden de compra.
boolean bBuy = true;
int iLotsNo = 10000;
double dRate = xxxxxx;
double dStop = xxxxxx;
double dLimit = xxxxxx;
int iTrailMinMove = 0;
Variant OrderNo = new Variant();
Variant DealerInt = new Variant();

System.out.println(”Lanzando orden de compra…”);
entryOrder1 = Dispatch.callN(TradeDeskHelper.tradeDesk, “CreateEntryOrder”, new Object[] {
sAccountName,
sInstrument,
new Boolean(bBuy),
new Integer(iLotsNo),
new Double(dRate),
new Double(dStop),
new Double(dLimit),
new Integer(iTrailMinMove),
OrderNo,
DealerInt});

Y aquí, la documentación del método CreateEntryOrder es:

TradeDeskAut.CreateEntryOrder
Brief
Create entry order
Declaration

Function CreateEntryOrder
(sAccountName As String, sInstrument As String, bBuy As Bool, iLotsNo As Integer, dRate As Double, dStop As Double, dLimit As Double, iTrailMinMove As Integer, ByRef OrderID as Variant, ByRef sDealerIntervention as Variant)

Details

Name
Description
sAccountName
Account name
sInstrument
Currency pair
bBuy
Is it buy or sell entry order
iLotsNo
Number of lots
dRate
Order rate
dStop
Stop level value (if 0, no stop level)
dLimit
Limit level value (if 0, no limit level)
iTrailMinMove
Value of trailing move (or 0)
sOrderID
[out] ID of created order
sDealerIntervention
[out] Dealer intervention flag value.’Y’ if order must be processed manually by dealer, in this case order will be not created automatically, it should be processed by dealer. Trader can accept requoted order using AcceptOrder method.

Description
Creates entry order. This method can be executed only by trader.

Artículos relacionados

6 Comentarios

RSS feed para los comentarios de esta entrada. TrackBack URI

  1. Hola. Saludos desde Paraguay. Me parece bien lo del intercambio de enlaces. Agregaré tu blog en la brevedad posible. Un abrazo.
    Alfredo
    http://www.forexparatodos.blogspot.com
    http://www.analisistecnicoforex.blogspot.com
    http://www.analisisfundamentalforex.blogspot.com

    Comentario por Alfredo — July 20, 2006 #

  2. Hola, ya estás entre mis links favoritos en mis tres blogs. Un abrazo

    http://www.forexparatodos.blogspot.com
    http://www.analisisfundamentalforex.blogspot.com
    http://www.analisistecnicoforex.blogspot.com

    Comentario por Alfredo — July 22, 2006 #

  3. Ya tengo la librería de JACOB pero qué necesito hacer con los archivos de Order2Go para poder compilar mi proyecto?.

    Muchas gracias.

    Comentario por Ricardo — July 24, 2006 #

  4. Hola Ricardo, para empezar debes tener la libreria de jabob agregada a tu proyecto, luego tener el exe de Orden2Go instalado en el PC, al igual que la plataforma de operaciones. Con eso ya al invocar desde Java utilizando Jacob a la API.

    Ahh una cosa importante es que debes actualizar desde el menu del Orden2Go que te instala en el menu inicio de Windows, la API a la ultima version, porque sino no te funcionara. Haces click en Inicio/Fx Order2Go/Update Order2Go, y eso actualiza automaticamente a la ultima version bajandola de internet.

    De todas formas ire poniendo algunos articulos para indicar como se hace esto y como se instala todo, de hecho mi idea es poner un Zip con un proyecto de prueba para que a partir del login, ya cada uno se programe lo que quiera.

    Solo pido un poquillo de tiempo y ya lo sacare, es que justo he sido padre ! jeje :)

    un saludo
    Diego

    Comentario por dpalmeira — July 25, 2006 #

  5. Hola.

    Yo no soy programador pero sé algo de Visual Basic para Excel. No conocía de la existencia del Order2go hasta que leí tu blog, muy bueno. He comenzado a hacer algunas pruebas en Visual Basic, me gusta la idea de combinar FXCM con Excel y programar lo que quiero hacer.

    Tengo problemas para abrir una posición a precio de mercado. He tratado con OPENTRADE pero no sé qué parámetros usar para que entre a precio de mercado. ¿Alguna sugerencia?

    Saludos.

    José.

    Comentario por José — July 26, 2006 #

  6. Hola José,

    Efectivamente OpenTrade es el método para abrir una posición de mercado, el tema es que seguro estas pasando algun parámetro mal y por eso lado debe estar el problema.

    En realidad pondré el ejemplo muy pronto en Java, pero es lo mismo para usarlo desde Visual Basic. De hecho el Orden2Go es un componente COM, por lo tanto puedes invocarlo directamente desde aplicaciones Microsoft, lo que pasa es que a mi me gusta mas java y me siento mejor con esa tecnología, es por eso que invoco a la API (COM) a través de un puente con la librería JACOB.

    Espero haberte ayudado, de todas formas con el codigo de ejempo JForex Template, será fácil transportar las llamadas a tu código de Visual Basic.

    Un saludo
    Diego

    Comentario por dpalmeira — July 27, 2006 #

Sorry, the comment form is closed at this time.

Bienvenido a Forexblog.es, el blog donde hablaremos de operaciones en el mercado de Forex con divisas

E-mail:

Este blog funciona gracias a WordPress | Condiciones de uso de los contenidos | Responsabilidad
Entradas y Comentarios feeds. XHTML y CSS válidos.

FinancialRed.com es Bolsa | Economia | Productos Financieros