Sunday, October 16, 2016

Ejemplo De Api Forexconnect

Proveedores de la nube Tecnología necesidad de aplicar tarifas e información de cuenta y la capacidad de enviar o modificar los pedidos de más uso de la API técnica, ofrecemos opciones para un mayor nivel de tecnología. Nuestros APIs para los proveedores de tecnología y en la nube le dan poco ancho de banda, tirando de la arquitectura, sin mínimos de cuenta, una gama completa de órdenes de operaciones, y el acceso a la divisa histórica y datos de CFD. ForexConnect ForexConnect API es nuestro más flexible API8212used por las plataformas de NinjaTrader y espejo del comerciante. ForexConnect es compatible con, Linux, Mac, iOS y Android. Código en 30 funciones y características diferentes que utilicen las estructuras de mensajería de bajo nivel o estructura de las tablas con campos calculados Conectarse a MATLAB para ejecutar el análisis avanzado de datos de precios de introducción Ya tiene su FXCM cuenta Descargar cuenta ForexConnect SDK Una FXCM, incluyendo los entrenamientos libres account8212no saldo mínimo requerido un editor de texto o IDE que se ejecuta LUA (es decir, Visual Studio) ¿Necesita más información Visita ForexConnect Wiki para leer nuestras guías para Java. NET y C y ver ejemplos de fragmentos de código complejas para acciones como comandos por lotes y grupos de contingencia. JAVA API Busca crear una aplicación de cliente o de servidor Java es una solución escalable, luz y potente API basada en la especificación FIX de divisas y personalizada para negociar con FXCM. Compatible con cualquier sistema operativo compatible con Java Ligero y basado en la mensajería FIX capaz de obtener oficios históricos y las tasas de introducción Ya tiene su cuenta FXCM Descargar cuenta SDK Java Una FXCM, incluyendo los entrenamientos libres account8212no saldo mínimo requerido una IDE (es decir, NetBeans, Eclipse) hacer preguntas, encontrar respuestas, vista de código de muestra y ver la documentación de la API de Java FXCMs Forum. How de usar gestor de tabla en la API ForexConnect el artículo describe el uso de un gestor de la tabla en la API ForexConnect. Un gestor de tabla crea y mantiene las mesas de negociación en la memoria ForexConnect. Las ventajas del uso del gestor de la tabla se describen en la documentación de la clase O2GTableManager. Los detalles de implementación Administrador de tablas se muestran en la sección ForexConnect API jerarquía de clases. Los siguientes párrafos contienen instrucciones completas sobre el uso gestor de la tabla. A partir Administrador de tablas Para asegurar el uso correcto de un gestor de la tabla, debe seguir estos pasos: 2. Antes de la entrada, se especifica que la sesión utiliza un gestor de tabla llamando al método O2GSession. useTableManager. Por ejemplo, 3. Inicie sesión en el servidor de operación utilizando el método. login O2GSession con los parámetros de conexión. Por ejemplo Nota: Para obtener más detalles de inicio de sesión, consulte la Cómo iniciar sesión en la sección. 4. Obtener una instancia de la clase O2GTableManager para la sesión utilizando el método O2GSession. getTableManager. Por ejemplo, Nota: Una instancia de la clase O2GTableManager sólo puede obtenerse después de una sesión obtiene el estado Conectado. Si la conexión entre la API y los frenos ForexConnect servidor de operación, es posible que tenga que volver a crear una instancia de la clase O2GTableManager. En el caso de la restauración de la conexión falla, el estado de la sesión se desconecta y hay que volver a iniciar sesión y crear una nueva instancia de la clase O2GTableManager. Si la API ForexConnect restablece la conexión con éxito, puede utilizar la instancia existente de la clase O2GTableManager. Para una explicación detallada de los estados de sesión, consulte la sección Los estados de sesión. Obtención de datos de las Tablas de negociación para obtener datos de una tabla de negociación, debe seguir estos pasos: 1. Compruebe el estado de administrador de tablas. Un objeto O2GTableManager debe tener el estado O2GTableManagerStatus. TablesLoaded. Para más detalles sobre la comprobación del estado gestor de la tabla, consulte la documentación IO2GTableManagerListener. Nota: También puede supervisar los cambios en el estado de carga de cada mesa en su implementación del método IO2GTableListener. onStatusChanged. El estado de carga de la mesa se puede obtener en cualquier momento llamando al método O2GTable. getStatus. Una tabla puede ser usada solamente si tiene el estado descansado. 2. Utilice el método O2GTableManager. getTable obtener una instancia de una de las subclases O2GTable y echado el valor de retorno a la subclase correspondiente. Los ejemplos de sintaxis para todas las mesas de negociación se presentan a continuación: 3. Utilice uno de los métodos de la subclase O2GTable para obtener información de nivel de fila. Los métodos son: FindRow. getRow. GetNextRow y getNextRowByColumnValue. Por ejemplo, si usted quiere conseguir preguntar y precios de oferta de la tabla Ofertas, escribir las siguientes líneas: Obtener precios de oferta y para las definiciones de métodos y ejemplos de código, consulte la documentación de las subclases O2GTable mostrados en la tabla anterior. Tramitación de las notificaciones acerca de las Tablas de comercio actualiza las tablas comerciales se actualizan automáticamente. Para procesar las notificaciones sobre las actualizaciones mesas de negociación, debe seguir estos pasos: 1. Crear una clase de escucha de mesa que implementa la interfaz IO2GTableListener. Por ejemplo, TableListener clase pública implementa IO2GTableListener 2. Poner en práctica los métodos de una clase de escucha de mesa: - para procesar las notificaciones acerca de adiciones fila a una tabla, poner en práctica el método onAdded - para procesar las notificaciones sobre cambios de fila de una tabla, poner en práctica el método onChanged - para procesar las notificaciones de eliminarlo del registro de una tabla, poner en práctica el método onDeleted. 3. Crear una instancia de una clase de tabla de oyentes. Por ejemplo, TableListener tableListener nueva TableListener () 4. Suscribirse una instancia de una clase de tabla de oyentes a cada tipo de actualización de forma individual mediante el uso de la O2GTable. subscribeUpdate método. 5. Proceso de notificaciones sobre actualizaciones de la tabla de los métodos descritos en el paso 2 de este apartado. 6. Antes del cierre de sesión, la suscripción del detector de cada tipo de actualización suscrito por separado utilizando el O2GTable. unsubscribeUpdate método. Por ejemplo, la tabla siguiente muestra la sintaxis / unsubsription suscripción para la clase O2GTradesTable y los métodos correspondientes de una clase que implementa la IO2GTableListener interface. How empezar a usar ForexConnect API (Win32 / Win64) En este artículo se describe cómo empezar a usar la API ForexConnect. Aquí puede encontrar los conceptos básicos de la API y explican paso a paso las instrucciones sobre cómo crear una muestra de trabajo de una simple aplicación de comercio. Plataforma. Microsoft Framework 2.0 y más tarde en MS Windows de 32 bits / 64 bits Versión de idioma. C IDE. Microsoft Visual Studio 2005, 2008, 2010 no es compatible con el uso de la biblioteca ForexConnect con el marco de la aplicación Microsoft Silverlight. biblioteca ForexConnect correr usando Mono no es compatible. Contenido Cómo obtener e instalar la API ForexConnect Bibliotecas descarga la última versión del API ForexConnect: Si usted tiene una versión de 32 bits de Microsoft Windows, descarga la versión de 32 bits de ForexConnect API. Si usted tiene una versión de 64 bits de Microsoft Windows, descarga de 64 bits acumulación de ForexConnect API. Ver el cuadro de diálogo Propiedades del sistema para obtener información sobre la versión del sistema. Tenga en cuenta que si su sistema es Windows XP y que no se ve x64 Edition que aparece en el cuadro de diálogo Propiedades del sistema, entonces se está ejecutando una versión de 32 bits de Windows XP. Iniciar el instalador y siga las instrucciones del asistente de configuración. Además vamos a suponer que ForexConnect API se instala en C: Program FilesCandleworksForexConnectAPI. using ForexConnect API con Microsoft Visual Studio Usted debe realizar los siguientes cambios en su proyecto C: 1. Configurar el evento posterior a la generación de su proyecto para copiar las bibliotecas de API y ForexConnect el apoyo a los archivos a la carpeta donde el programa está construido: En las propiedades del proyecto rarr de Eventos de rarr posterior a la generación de línea de comandos de eventos, agregue el texto siguiente: copy c: programa FilesCandleworksForexConnectAPIbin. (TargetDir) 2. Añadir una referencia al ensamblado fxcore2.dll a su proyecto. Si utiliza 4.0 a continuación, utilizar el conjunto fxcore2.dll adecuada que se puede encontrar en la carpeta C: Programa FilesCandleworksForexConnectAPIbinnetdotnet40. Si utiliza 2.0 a continuación, utilizar el montaje de fxcore2.dll carpeta C: Programa FilesCandleworksForexConnectAPIbinnetdotnet20. 3. Añadir la fxcore2 espacio de nombres a su código: Distribución Debe distribuir su programa con todas las bibliotecas binarios y archivos de soporte de C: Program FilesCandleworksForexConnectAPIbin. ForexConnect bibliotecas y archivos de soporte deben estar ubicados en la carpeta donde está instalada la aplicación. Tenga en cuenta que el montaje fxcore2.dll debe ser colocado en la carpeta en la que su aplicación se instala también. ForexConnect funciones de la API de eventos Driven Architecture Todas las API utilizadas por ForexConnect son asíncronas, por lo que tendrá que implementar una arquitectura orientada a eventos en el código. Una arquitectura orientada a eventos es un patrón de arquitectura de software que gestiona el comportamiento de la producción, la detección y el consumo de eventos, así como las respuestas que evocan. En este contexto, un evento debe ser tratado como un valor o un mensaje que se puede identificar dentro de un flujo continuo de insumos controlados, tales como las condiciones específicas o señales o algo más. arquitecturas controladas por eventos por lo general consisten en productores y consumidores de eventos de eventos. Los consumidores de eventos suscribirse a algún administrador de eventos, y productores de eventos publican a este entrenador. Cuando el administrador recibe un evento de un productor, reenvía este evento para todos los consumidores o los almacenes registrados caso para el reenvío posterior. Un controlador de eventos es una rutina de devolución de llamada que trabaja de forma asíncrona y se ocupa de las aportaciones recibidas en un programa (eventos). En este contexto, un evento es un elemento significativo de la información de la aplicación de un marco de desarrollo subyacente, por lo general de un conjunto de herramientas de interfaz gráfica de usuario (GUI) o algún tipo de rutina de entrada. En el lado interfaz gráfica de usuario, por ejemplo, eventos incluyen combinaciones de teclas, la actividad del ratón, las selecciones de acción, o expiraciones del temporizador. En el lado de entrada, eventos incluyen la apertura o el cierre de los archivos y datos corrientes, la lectura de datos y así sucesivamente. la gestión de eventos es la recepción de un evento en algún controlador de eventos de un productor de eventos y los procesos posteriores. Los procesos que intervienen en la gestión de eventos incluyen: Identificar dónde un evento debe ser remitido Hacer el avance de recibir el evento transmitido Tomando algún tipo de medidas apropiadas en respuesta, como escribir en un registro, el envío de una rutina de error o la recuperación o el envío de un mensaje El evento manejador podrá remitir en última instancia el caso de un consumidor de eventos. El beneficio de las arquitecturas orientadas a eventos es que permiten arbitrariamente grandes colecciones de los consumidores y productores, junto con un número de gerentes, para intercambiar información de estado en curso y respuesta. También suelen ser bastante sensible a los acontecimientos a medida que ocurren, y funcionan bien en entornos de comunicación impredecibles y asíncronos. ForexConnect Manejo de Eventos API Peculiaridades El ForexConnect ya cuenta con las implementaciones de las interfaces IO2GSessionStatus y IO2GResponseListener para recibir notificaciones de cambios de estado de sesión y recepción de datos. Así que usted puede utilizar los eventos correspondientes del objeto O2GSession en lugar de implementar esas interfaces por sí mismo. Sin embargo se puede poner en práctica y utilizarlas para recibir notificaciones desde el objeto de sesión después de la suscripción si es más conveniente para usted. Tenga en cuenta que todos los controladores de eventos que se han implementado para eventos O2GSession se llaman en un hilo separado. Por lo que debe tener en cuenta lo siguiente: Siempre se debe proporcionar un acceso seguro para subprocesos a todos los datos almacenados en su aplicación que se actualiza a partir de sus controladores de eventos. No es necesario para sincronizar los controladores de eventos llamadas y no es necesario pensar en el controlador de eventos volver a entrar, porque todos los eventos de la API ya se sincronizan en un único hilo. Por lo tanto eventos manejadores se invocan en secuencia. Debe manejar cada caso lo más rápido posible, ya que se sincronizan en el hilo manipuladores por la biblioteca ForexConnect. Puede ejecutar sus propios hilos para acelerar los eventos de manipulación. Gestión de Vida objeto que no es necesario ningún recurso adicional para la gestión de los objetos obtenidos usando API ForexConnect. Sin embargo, se recomienda llamar al método Dispose () para todos los objetos obtenidos que lo implementan. Estas llamadas le permiten liberar recursos del sistema no utilizados de manera más eficaz. Se puede utilizar la instrucción using para este fin: La aplicación de ejemplo que utiliza ForexConnect generales del API Esta muestra es una simple aplicación de consola que utiliza la API ForexConnect. Esta aplicación tiene las siguientes características: Conexión a un servidor de comercio con las credenciales de usuario predefinidos Recuperación de precios para EUR / USD Recuperando la tabla de cuentas para el usuario Creación de una orden de Mercado Abierto para EUR / USD cuando la entrada B (compra) o s (la venta ) Recuperar la tabla de pedidos y recibir notificaciones de cambios en esta tabla Finalización de la ejecución de la aplicación cuando se introduce q (QUIT) para simplificar la muestra, toda la lógica de la aplicación se implementa en una clase MyApp. Puede descargar todo el código fuente de la muestra: Archivo: Muestra ForexConnect Net. zip Conectando con el servidor de Comercio El objeto principal de la API ForexConnect es un O2GSession objeto de sesión en el espacio de nombres fxcore2. Este objeto representa una sesión de conexión de los usuarios y se puede crear utilizando un método estático de la clase O2GTransport: El objeto O2GSession notifica a los suscriptores de todos los cambios de estado de la conexión a través de los siguientes eventos: oa través de la interfaz de devolución de llamada IO2GSessionStatus. Los datos que reciben notificaciones se pueden manejar utilizando los siguientes eventos O2GSession: oa través de la interfaz de devolución de llamada IO2GResponseListener. Para conectarse a un servidor utilizando el comercio ForexConnect API, haga lo siguiente: Crear un objeto de sesión. Implementar controladores de eventos objeto de sesión para recibir notificaciones de cambios de estado de sesión. Llamar a login () para la sesión y esperar hasta que se complete la proccess inicio de sesión. Procesar las notificaciones recibidas de los cambios de estado de conexión en onSessionStatusChanged para administrar el estado del proceso de inicio de sesión. Véase el siguiente código fuente para los detalles de aplicación: Tenga en cuenta que la espera de una notificación de la finalización de inicio de sesión porque el ltcodegtlogin () es asíncrono. Para ello, se utiliza una señal de sincronización especial. Cuando onSessionStatusChanged se llama, la señal se establece para reanudar la ejecución del hilo después de mSyncSessionEvent. WaitOne (5000) en el método run (). La elección de sesión con Sesión de Negociación Cuando una cuenta de usuario tiene varias sesiones de negociación, a continuación, inicio de sesión es un proceso de múltiples pasos: 1. Llame al método de inicio de sesión () del objeto de sesión con un nombre de usuario, contraseña, dirección URL del servidor, y el nombre de la base de datos especificada. 2. Proceso del estado recibido TradingSessionRequested en el controlador de eventos onSessionStatusChanged. Hay siguientes pasos comunes para procesar el estado TradingSessionRequested: 2.1. Recuperar la lista de sesión de negociación del objeto O2GSession utilizando el método () getTradingSessionDescriptors. 2.2. Proporcionar una opción de la sesión de negociación para el usuario. 2.3. Solicitar un PIN secreto por parte del usuario. 2.4. Establecer el identificador de sesión de negociación especificada y el PIN utilizando setTradingSession (). Mostrar Fuente Gestión de Administración de Precios de precios incluye los siguientes pasos: Compruebe si hay datos de precios solicitan automáticamente durante el inicio de sesión. Si es así, vaya al paso 2. Si no, enviar una solicitud de los precios actuales para todos los instrumentos. Manejar la respuesta. Manejar la actualización de precios para un determinado instrumento. Para recibir notificaciones de respuestas solicitud o cambios de estado de los objetos de servidor, debe implementar y suscribirse controladores de eventos para los eventos correspondientes de la instancia O2G2Session. Para ello, modifique la clase MyApp para manejar estos eventos: Solicitar precios actuales Dependiendo de la configuración del servidor de comercio, los precios actuales de todos los instrumentos o bien pueden recibirse automáticamente durante el proceso de inicio de sesión, o bien de forma explícita pueden solicitar estos datos desde el servidor de comercio . Por lo tanto, para obtener los precios actuales que debe hacer las siguientes acciones: 1. Comprobar si hay ofertas de precios recibidos de inicio de sesión utilizando el método isTableLoadedByDefault () de la instancia O2GLoginRules. 2. Si se cargan, obtener el objeto respuesta ya recibió ofertas por el método de getTableRefeshResponse (Ofertas) de la instancia O2GLoginRules. Este objeto respuesta puede ser procesado para extraer datos de ofertas. Para obtener lector de ofertas para la lectura de los datos de respuesta, hacer lo siguiente: Obtener la fábrica lector de respuestas utilizando el método getResponseReaderFactory () de la instancia de objeto de sesión. Crear un lector usando el método createOffersTableReader () de la instancia O2GResponseReaderFactory. 3. Si las ofertas no fueron recibidos el inicio de sesión, enviar una solicitud para la tabla ofertas explícitamente usando el método sendRequest () del objeto de sesión. Para crear la solicitud correspondiente, haga lo siguiente: Obtener la fábrica solicitud utilizando el método getRequestFactory () del objeto de sesión. Crear solicitud utilizando el método createRefreshTableRequest () de la instancia O2GRequestFactory. Solicitar a los precios actuales, añadir el siguiente código al método run () de la muestra después de la transformación entrada: En la muestra, esperamos a la recepción de la respuesta de solicitud a través de una señal de sincronización. Así que cogemos el momento para iniciar el monitoreo de los precios cambiantes para EUR / USD desde. Por supuesto, hay que establecer esta señal cuando se reciben los datos de precios. En nuestra muestra un truco se utiliza para evitar la duplicación de código. Como se verá más lejos, el procesamiento de la respuesta es la misma cuando los datos de las ofertas se recibe de los O2GLoginRules objeto y cuando nos recuperar datos de forma explícita ofrece. Así que para procesar el objeto respuesta recibida de O2GLoginRules. se puede llamar directamente al controlador de eventos del evento implementado RequestCompleted del objeto de sesión. Recepción de datos de precios como una llamada de sendRequest () es asíncrona, para recibir una respuesta con datos de precios, es necesario implementar el controlador de eventos para RequestCompleted caso de objeto de sesión. A medida que este controlador de eventos se utiliza para recibir las notificaciones de respuestas de todas las solicitudes, se debe hacer lo siguiente: Compruebe si el tipo de respuesta es GetOffers. Obtener la respuesta del lector O2GOffersTableResponseReader usando O2GResponseReaderFactory para obtener datos sobre los precios del objeto respuesta. Procesar todas las filas de la tabla Ofertas utilizando el lector. Debe proporcionar un acceso seguro para subprocesos a las ofertas almacenados en su aplicación. Ver el código fuente abajo para una muestra de cómo manejar de recepción de una respuesta. Para almacenar los precios actuales para el EUR / USD, las variables adecuadas se definen y se pone en práctica el acceso seguro para subprocesos a ellos. Una señal de sincronización se establece al recibir ofertas de los datos se ha completado. Este truco permite a la espera de recibir los precios actuales en el hilo principal después de enviar la solicitud. Nuestra aplicación de ejemplo controla el evento RequestComplete y extrae la oferta EUR / USD y pedir precio. Solicitar a la acogida y los precios de compra se almacenan en las variables de nivel de clase mEURUSDBid y mEURUSDAsk, métodos compatibles con el proceso de leer y cambiar estas variables se implementan. Recibir ofertas Actualizaciones Tenga en cuenta que la notificación es recibida en un hilo separado, por lo tanto, se debe utilizar la lectura multi-hilo y la actualización de las variables que almacenan los datos recibidos. Agregue el código siguiente para MiApl para manejar la variación del precio de EUR / USD: El procesamiento de la actualización de la tabla ofertas incluye los siguientes pasos: 1. Get O2GResponseReaderFactory del objeto de sesión. 2. Obtener un lector O2GTablesUpdatesReader utilizando el método de fábrica a través createTablesUpdatesReader. 3. Forme un bucle para enumerar cada elemento de la lista de actualizaciones debido a que los datos recibidos pueden contener actualizaciones para cualquier tipo de objetos, no sólo para la tabla de Ofertas. Así que hay que comprobar cada elemento de la lista de actualizaciones para el tipo de tabla requerida y actualizar el tipo de operación. 4. Para procesar el cambio, utilice el método getOfferRow () del lector para recuperar un objeto del tipo O2GOfferRow: Tenga en cuenta que la notificación es recibida en un hilo separado, por lo tanto, se debe utilizar la lectura multi-hilo y la actualización de las variables que almacenar los datos recibidos. Agregue el código siguiente para myClass para manejar el par EUR / USD actualización de precios: En nuestra muestra, se procesa sólo las actualizaciones de precios / USD EUR y almacenamos sus últimos valores de las variables y mEURUSDBid mEURUSDAsk. Hemos implementado métodos compatibles con el proceso para acceder a estas variables. Orden de Creación Para crear un pedido, haga lo siguiente: 1. Asegúrese de que tiene al menos un identificador de cuenta de usuario y un ID de la oferta que se requieren para crear un pedido. Si no es así, les solicite en primer lugar. 2. Utilice una instancia O2GRequestFactory para crear O2GValueMap para especificar los parámetros de orden. 3. Llenar el valuemap con los parámetros necesarios para crear un tipo particular de orden por favor ver ForexConnectAPI SDK para obtener más información acerca de los parámetros de comandos para crear órdenes. 4. Crear un objeto utilizando O2GRequest O2GRequestFactory para la valuemap lleno. 5. Iniciar la ejecución de la solicitud. 6. Recibir la respuesta de solicitud para asegurarse de que la ejecución de la petición tiene éxito. Como necesitamos un ID de cuenta para nuestra muestra, permite recuperar las cuentas de la tabla en un primer momento. Recuperación de datos de la tabla de cuentas es similar a la recuperación de datos de la tabla ofertas. Para simplificar la muestra, obtener la primera cuenta de la lista de cuenta de usuario y almacenarlo en una variable de nivel de clase para su posterior uso. Esperamos la respuesta para evitar la creación de la orden antes de que se recupera el ID de la cuenta. La mejor práctica es la encapsulación de la lógica de creación de orden en un método separado de la clase MyApp. También se debe manejar la respuesta a la solicitud de creación de orden en el controlador de eventos onRequestCompleted para asegurarse de que se crea el pedido. Véase el siguiente código que crea una compra o venta para que el instrumento EUR / USD con 100K cantidad: Tenga en cuenta que hay algunas clases de ayuda útiles en el espacio de nombres fxcore2.Constants para llenar el objeto valueMap con parámetros de orden: Se puede mantener la solicitud de ID de proceso de respuesta de tan sólo una solicitud particular: Recuperando órdenes tabla Toda la información acerca de los estados de los pedidos existentes pueden ser recuperados de la tabla pedidos. ForexConnect API permite recuperar la tabla de pedidos sólo para una cuenta especificada. Así que hay que hacer lo siguiente: Recuperar la tabla Cuentas. Espere hasta que se reciba datos de las cuentas. Recuperar la tabla pedidos para cada cuenta recibida utilizando createRefreshTableRequestByAccount () de la instancia O2GRequestFactory. Manejar la respuesta de solicitud en un controlador de eventos del evento RequestComplete. Manejar la actualización de la tabla Orders en un controlador de eventos del evento TablesUpdates. Para simplificar nuestra muestra, tomamos el ID de cuenta almacenado y lo usamos en el ejemplo de la recuperación tabla Pedidos. Tenga en cuenta que si se almacenan los datos de las solicitudes, se debe proporcionar un acceso seguro para subprocesos a estos datos y correcta gestión de los contadores de referencias de los objetos almacenados. En nuestra muestra, las órdenes de datos no se almacenan, por lo que la sincronización no se ha implementado. Aplicación finalización. Cerrar sesión Como se puede ver, el método stop () de nuestra clase MiApl libera todos los recursos del sistema utilizados y cancele la suscripción todos los controladores de eventos de eventos de sesión para dejar de recibir notificaciones. Debe llamar al cierre de sesión () antes de la terminación de su aplicación. También debe llamar al método Dispose () de la instancia de sesión antes de tmain () devuelve el control. Tratamiento de la petición errores Cuando se produce un error durante la ejecución asíncrona de una petición, el controlador de eventos del evento RequestFailed se invoca. En nuestra muestra, controlar el error al poner la descripción del error en la salida de la consola y detener la aplicación: El lanzamiento de la muestra Por ahora nuestra muestra puede conectarse, recuperar los cambios de precios / USD EUR, mostrar información sobre los pedidos existentes, y tiene un método para crear una Orden de Mercado Abierto. Para iniciar la muestra en esta etapa, tenemos que poner en práctica el uso de nuestra clase MyApp. Para ello, haga lo siguiente: Dentro de la función principal de nuestra aplicación de consola, cree una instancia de nuestra clase MyApp. Llamar al método run () de la instancia para iniciar sesión en el servidor de comercio y comenzar a recibir actualizaciones de EUR / USD. Proporcionar lectura de entrada de los usuarios para ejecutar comandos: cuando b es de entrada, crear una orden de compra de mercado cuando s es de entrada, crear un orden de mercado de venta cuando q es de entrada, salir de la aplicación. El método run () de la muestra se prepara la solicitud de negociación. Después se hace la preparación, devuelve cierto si todo está bien. Como se puede ver, este método llama a todas las funciones de la API de forma asíncrona, pero espera a que sus respuestas usando objetos de sincronización especiales. Tenga en cuenta que esto no es un método eficaz de utilizar ForexConnectAPI, pero es fácil para la comprensión. No se olvide de especificar un nombre de usuario y una contraseña válidos para una llamada del método de inicio de sesión (). Ahora se puede construir y ejecutar el ejemplo. Si usted tiene cualquier problema con la construcción de la muestra, por favor compararlo con todo el código fuente de la muestra: Archivo: Muestra ForexConnect Net. zip. ¿Cuál es siguiente para obtener información detallada sobre todas las clases de la API y sus métodos, consulte ForexConnectAPI SDK. Este Artículo en Otro LanguagesHow API para incluir en ForexConnect El artículo describe cómo incluir API ForexConnect el 2.0 y el 4.0 de la aplicación. Para incluir ForexConnect API en su aplicación 2.0, usted debe: Coloca el programa de aplicación en el mismo directorio donde se encuentran los archivos DLL de soporte (normalmente la carpeta bin que contiene expat. dll fxcore2.dll fxmsg. dll etc....). Puede hacerlo por cualquiera de la construcción de su ejecutable en la carpeta con el apoyo dlls o copiando los archivos. DLL necesarios en el directorio de destino. Por ejemplo, si la carpeta C: ForexConnectAPIbin contiene estas bibliotecas, una línea de comandos del evento post construida puede tener este aspecto: Añadir netdotnet20fxcore2.dll como una referencia a su proyecto. Añadir fxcore2 espacio de nombres al proyecto: Para utilizar la API ForexConnect en su aplicación 4.0, usted debe: Coloca el programa de aplicación en el mismo directorio donde se encuentran los archivos DLL de soporte (normalmente la carpeta bin que contiene expat. dll fxcore2.dll fxmsg. dll... etc.). Puede hacerlo por cualquiera de la construcción de su ejecutable en la carpeta con el apoyo dlls o copiando los archivos. DLL necesarios en el directorio de destino. Por ejemplo, si la carpeta C: ForexConnectAPIbin contiene estas bibliotecas, una línea de comandos del evento post construida puede tener este aspecto: Añadir netdotnet40fxcore2.dll como una referencia a su proyecto. Añadir fxcore2 espacio de nombres a su proyecto: Hilo: API ForexConnect: ¿Debería ser manejados respuestas en un hilo dedicado exención de responsabilidad: La negociación de divisas con apalancamiento conlleva un alto nivel de riesgo y podría no ser adecuado para todos los inversores. El alto grado de apalancamiento puede trabajar en contra de usted, así como para usted. Existe la posibilidad de que deba afrontar la pérdida en exceso a su inversión y por lo tanto no debe invertir dinero que no pueda permitirse perder. Antes de decidir invertir en divisas debe considerar cuidadosamente sus objetivos de inversión, nivel de experiencia y apetito de riesgo. Usted debe ser consciente de todos los riesgos asociados con el comercio de divisas y buscar el asesoramiento de un asesor financiero independiente si tiene alguna duda. Cualquier opinión, noticia, investigación, análisis, precio u otra información contenida en este sitio web tienen carácter de comentario general de mercado y no constituye consejo de inversión. FXCM no aceptará responsabilidad por cualquier pérdida o daño, incluyendo sin limitación, cualquier pérdida de beneficios, que pueda surgir directa o indirectamente del uso o dependencia de dicha información. Todas las horas son GMT -4. La hora actual es: 8:21 AM. Derechos de autor 2016 FX diario. Todos los derechos reservados.


No comments:

Post a Comment