Sunday 10 September 2017

Submitorder Jforex4


Jforexutils - un insieme di classi Java Utile per JForex - JForexUtils Part3 - Una collezione di classi Java utili per JForex - Part3 Benvenuti alla terza parte della documentazione JForexUtils. Nel caso in cui vi siete persi parti precedenti: Parte 1 Parte 2 Tutti i collegamenti del progetto sono elencati alla fine di questo articolo. In questa parte ci occuperemo contesto molto centrale di ordine di invio e di cambiamento. Gli strumenti per questi compiti sono facili da usare e possono essere configurati per scenari complessi. Tutti gli esempi possono essere scaricati come file Java nel ExamplePart3. Classe OrderUtil Questa classe importante gestisce tutte le creazioni degli ordini e cambiamenti. Nella Parte 2 weve visto come creare un oggetto OrderParams che contiene tutti i parametri per un ordine. Consente di iniziare ad utilizzare questo orderParams sull'oggetto per aprire un nuovo ordine: 1) Invia nuovo ordine al server Questo è stato abbastanza facile con l'aiuto dei orderParams oggetto Nella prima riga creiamo l'istanza orderUtil e nella seconda riga passiamo la nostra creato in precedenza orderParams oggetto per il metodo di invio. Questo è il caso uso minimo per l'apertura di un nuovo ordine. Si può avere qualche domanda però: Q1 Dove si trova l'ordine Q2 creato se è stata generata un'eccezione dove si trova e arent dovremmo prenderlo Q3 Che cosa succede se la presentazione è stata respinta dal Q4 del server Posso inviare ordini su un thread che è diverso dal thread strategia ben rispondere a tutte queste domande in sequenza. Come detto prima, questo esempio è il minimo che si può fare in quel modo, ma non si sa se la presentazione e l'accettazione dell'ordine da parte del server ha avuto successo o meno. La chiave è che il metodo di invio restituisce un oggetto OrderCreateResult. Questo oggetto contiene informazioni sullo stato dell'ordine di presentazione. Vediamo come possiamo estendere il primo esempio: Linea 1) il metodo di invio viene chiamato come prima, ma questa volta esploriamo l'istanza restituita OrderCreateResult. Linea 2-5) Qui si controlla se un excpetion si è verificato e, se sì fare un po 'la corretta gestione degli errori. L'oggetto risultato fornisce una funzione di accesso opzionale. Linea 6-7) Se nessuna eccezione è stato gettato possiamo essere sicuri che l'ordine è stato creato (ma non ancora aperto dal server dal momento che questo richiede un po 'di tempo). Per ottenere l'ordine creato noi chiamiamo orderOpt (). Get () sull'oggetto risultato che fornisce un metodo di accesso opzionale. In alternativa, è possibile utilizzare il metodo OrElse di optional per ottenere l'istanza ordine o null se un excpetion si è verificato. Questo è il modo più breve retreiving dell'ordine creato, ma è una questione di gusto che lo stile di attuazione si preferisce: Qui verificare se l'ordine è nullo e se così ancora una volta di valutare l'eccezione che è presente nell'oggetto risultato. Per ricapitolare: l'ordine creato e possibili eccezioni possono essere retreived dall'oggetto OrderCreateResult che fornisce informazioni circa l'esito immediato di una sottomissione ordine. Tutto questo dovrebbe ora rispondere alle domande Q1 e Q2. Fino ad ora abbiamo appena presentato un ordine al server e valutato il risultato immediato, ma non abbiamo cura circa le risposte del server. JForexUtils monitora tutte le richiamate IMessage e valuta questi per vedere tutti i messaggi relativi ordini. Se vogliamo reagire sulle risposte del server di cui abbiamo bisogno per migliorare il nostro inviare chiamare un po 'di più. Classe OrderUtil fornisce due overload del metodo di invio che prendono oggetti callback aggiuntivi. Con questi callback saremo informati circa tutte le modifiche di ordine, non appena saranno disponibili, quindi non è necessario waitblock tuo thread Consente di come funziona: 2) Invia per server con oggetto callback per la notifica degli eventi per ricevere tutti gli eventi di ordine in primo luogo abbiamo devono implementare l'interfaccia OrderEventConsumer che ha un metodo onOrderEvent vuoto (finale orderEvent orderEvent). Ecco un esempio di implementazione di OrderEventConsumer che si limita a stampare gli eventi ordine ricevuto: Si vede che MyEventConsumer implementa OrderEventConsumer e valuta l'oggetto OrderEvent passato. Questo oggetto fornisce l'accesso a l'ordine e una cosiddetta costante enum OrderEventType che rappresenta tutti i possibili eventi di ordine (si dovrebbe esplorare OrderEventType con il vostro IDE). In questo esempio si passa-caso il tipo di evento e reagire su di successo presentazione ordine e riempire. È possibile inserire i gestori personalizzati qui o reagire su altri tipi di eventi a cui sei interessato Con l'aiuto della nostra classe MyEventConsumer, possiamo ora presentare i orderParams oggetto insieme a questo gestore di eventi ordine:. Questo è con molto poche righe weve ha creato un attuazione, che è reattivo a tutti gli eventi di ordine invece di fare brutte blockingwaits sul filo strategia. Alcune osservazioni: JForexUtils ci costringe a disaccoppiare la creazione di un ordine dalla valutazione degli eventi di ordine. Questo aiuta a scrivere codice che è più modulare e riutilizzabile (immaginate ad esempio è necessario l'implementazione di OrderEventConsumer in molti posti). Essere consapevoli del fatto che il OrderEventConsumer interfaccia ha un solo metodo. Questo ci permette di passare lambda Java8 al metodo presentare quanto prima JForex sarà completamente sostenere Java8 (JForexUtils è pronta per il futuro). Se non piace Big Switch-casi e mettere ogni logica evento in un unico luogo, esiste un secondo overload del metodo di invio che prende una mappa di istanze OrderEventConsumer. Questi esempio ora informarsi solo su uno specifico evento di ordine e mantiene la logica di gestione di piccole dimensioni. Ecco un esempio che implementa due versioni di OrderEventConsumer: classe src img Ora siamo in grado di creare una mappa che definisce quali eventi di ordine verranno instradati alla quale istanza di OrderEventConsumer: img class src Qui abbiamo definito che un tipo di evento SUBMITOK sarà forwared al SubmitHandler istanza e il tipo di evento SUBMITREJECTED saranno forwared all'istanza SubmitRejectHandler. Questo è il controllo più a grana fine che possiamo ottenere di reagire su tipi di eventi di ordine e tutta questa roba dovrebbe ora rispondere alla domanda Q3. Quindi, in caso di filettatura si può individuare la differenza Non c'è alcuna differenza, non dovete obbedire a nulla quando si lavora con classe OrderUtil su diverse discussioni Tu appena inviato l'ordine e dimenticare la roba complessa che il Dukascopy Wiki descrive qui. Non c'è bisogno di creare taks Callable, non c'è bisogno di chiamare il IEngine, tutto questo è fatto per voi dietro le quinte e risposte da qui la nostra ultima domanda Q4. --------------------------------------- Questo è per la parte 3 della serie di articoli. Abbiamo coperto un sacco di terra con il OrderUtil classe per vedere come presentare un ordine. Nella parte prossimo 4 continueremo su questa strada e vedere come tutte le altre operazioni di ordine come unione, impostare SLTP ecc lavoro, quindi rimanete sintonizzati Utilizzando JForex per monitorare e verificare i vostri commerci L'integrazione Ponte T3 consente agli operatori di commercio sia in MetaTrader 4 o JForex. Ma, come sostiene Shuang Wu, c'è un caso deve essere fatto per avere entrambe le piattaforme aperte quando il commercio come un modo di controllare e verificare i vostri commerci. Quando si utilizza il Ponte T3 integrazione, perché si dovrebbe avere JForex aperto mentre si sta operando con MetaTrader 4 In questo articolo, vedremo alcune delle diverse caratteristiche di entrambe le piattaforme e offrire alcuni consigli come usare JForex per aiutare a monitorare la vostra tenere conto quando si usa MT4. T3 Integrazione ponte collega MetaTrader 4 al vostro conto di trading Dukascopy Bank senza soluzione di continuità. Tuttavia, è importante tenere a mente che ogni volta che si scambi con MetaTrader 4, il commercio non è realmente accadendo all'interno MT4 ma invece è sulla piattaforma JForex. Quindi, anche se si utilizza MT4 per tutto il vostro trading, vi consigliamo di avere anche la piattaforma JForex aperto per monitorare e verificare i vostri commerci. Perché Il motivo principale è che le piattaforme MT4 e JForex visualizzare i commerci in modi fondamentalmente diversi. Differenze tra MT4 e JForex MetaTrader 4 è una piattaforma basata su ordine e JForex è una piattaforma basata su posizione. (Per imparare la differenza tra MT4 e JForex, guardare il video tutorial dal nostro precedente post.) Ma questo significa che ogni volta che si apre due buy commerci sulla coppia stessa moneta, MT4 li registrarsi come due mestieri, mentre su JForex si vuole vedere soltanto uno. Ad esempio, se avete aperto i seguenti scambi su MetaTrader 4: ACQUISTA 1.0 sacco EURUSD appariranno 1.2950 BUY 1.0 sacco EURUSD 1.2960 Gli scambi su JForex come: ACQUISTA 2.0 sacco EURUSD 1,2955 Inoltre, essi mostrano diversi mestieri quando copertura (cioè, aprendo due posizioni opposte con la stessa dimensione). Su MT4, compravendite di copertura verranno mostrati come due ordini, e al contrario, sulla JForex ci wonrsquot essere qualsiasi commercio dimostrato, dal momento che i mestieri, anche la posizione. (Si può imparare di più da nostra precedente newsletter su come evitare commissioni extra quando copertura in MetaTrader 4). In una prossima versione del Ponte T3 Integrazione, si sarà in grado di accedere ad un live vista basata sul web che darà un la visualizzazione di tutti i vostri commerci, la posizione e l'ordine base. Tuttavia, per ora quando si utilizza l'integrazione Ponte T3, si consiglia di sorseggiare JForex aprire quando si scambi con la nostra piattaforma MetaTrader 4. MetaTrader 4 è utilizzato come strumento di analisi per l'analisi tecnica o come bedrdquo ldquoforcing per l'esecuzione di vostri EAS. Avendo JForex aperto vi aiuterà a monitorare il tuo account in modo più efficiente e aiutare a evitare potenziali errori a causa della differenza caratteristica tra i due sistemi. Shuang Wu è un membro del Fair Trading team di marketing tecnologia, che è anche un membro attivo della comunità di forex trading. EDIZIONE GENNAIO 2012

No comments:

Post a Comment