Friday 4 August 2017

Jforex Api Submitorder


Descrizione dei metodi submitOrder Sottopone nuovo ordine. ordine restituito è in stato di IOrder. State. CREATED e sarà aggiornato allo stato IOrder. State. OPENED dopo la conferma del server. Parametri: label - utente identificatore definito per l'ordine. Etichetta deve essere univoco per l'account utente dato agli ordini attuali. Caratteri permessi: lettere, numeri e. L'etichetta deve avere al massimo 256 caratteri. strumento - strumento orderCommand - tipo di quantità ordine inviato - importo in milioni per il prezzo dell'ordine - prezzo preferito per ordine. Se zero, allora verrà utilizzato prezzo ultimo mercato visibile sul JForex. Il prezzo dovrebbe essere divisibile per 0,1 pip o ordine sarà respinto. In caso di ordini di mercato, il prezzo non corretta (peggio di mercato attuale) sarà cambiato a prezzo corrente e lo slittamento slittamento - slittamento. Il valore di slittamento significa seguente: se si utilizza il valore negativo allora predefinito di 5 pips se Double. isNaN (slittamento) vero allora non slittamento viene utilizzato in caso contrario, lo slittamento è impostato in pips, si dovrebbe passare 1, non 0,0001 stopLossPrice - prezzo del arrestare la perdita. Il prezzo dovrebbe essere divisibile per 0,1 pip o ordine sarà respinto takeProfitPrice - prezzo del take profit. Il prezzo dovrebbe essere divisibile per 0,1 pip o ordine sarà respinto goodTillTime - quanto a lungo ordine dovrebbe vivere se non eseguita. Solo se 0, quindi orderCommand non deve essere né IEngine. OrderCommand. BUY né ordine di mercato IEngine. OrderCommand. SELL. commento - commento che verrà salvato in ritorni di ordine: nuova istanza ordine in stato IOrder. State. CREATED Genera: JFException - se l'etichetta non è valido o già esistente, se goodTillTime 0 e orderCommand non è BIDOFFER, se l'importo è inferiore al minimo consentito , se alcuni dei parametri richiesti è submitOrder nullo Sottopone nuovo ordine. ordine restituito è in stato di IOrder. State. CREATED e sarà aggiornato allo stato IOrder. State. OPENED dopo Parametri di conferma server: label - utente identificatore definito per l'ordine. Etichetta deve essere univoco per l'account utente dato agli ordini attuali. Caratteri permessi: lettere, numeri e. L'etichetta deve avere al massimo 256 caratteri. strumento - strumento orderCommand - tipo di quantità ordine inviato - importo in milioni per il prezzo dell'ordine - prezzo preferito per ordine. Se zero, allora verrà utilizzato prezzo ultimo mercato visibile sul JForex. Il prezzo dovrebbe essere divisibile per 0,1 pip o ordine sarà respinto. In caso di ordini di mercato, il prezzo non corretta (peggio di mercato attuale) sarà cambiato a prezzo corrente e lo slittamento slittamento - slittamento. Il valore di slittamento significa seguente: se si utilizza il valore negativo allora predefinito di 5 pips se Double. isNaN (slittamento) vero allora non slittamento viene utilizzato in caso contrario, lo slittamento è impostato in pips, si dovrebbe passare 1, non 0,0001 stopLossPrice - prezzo del arrestare la perdita. Il prezzo dovrebbe essere divisibile per 0,1 pip o ordine sarà respinto takeProfitPrice - prezzo del take profit. Il prezzo dovrebbe essere divisibile per 0,1 pip o ordine sarà respinto goodTillTime - quanto a lungo ordine dovrebbe vivere se non eseguita. Solo se 0, quindi orderCommand non deve essere né IEngine. OrderCommand. BUY né ordine di mercato IEngine. OrderCommand. SELL. Ritorni: nuova istanza ordine in stato IOrder. State. CREATED Produce: JFException - se l'etichetta non è valido o già esistente, se goodTillTime 0 e orderCommand non è BIDOFFER, se l'importo è inferiore a minimo consentito, se alcuni dei parametri richiesti è null submitOrder Sottopone nuovo ordine. ordine restituito è in stato di IOrder. State. CREATED e sarà aggiornato allo stato IOrder. State. OPENED dopo Parametri di conferma server: label - utente identificatore definito per l'ordine. Etichetta deve essere univoco per l'account utente dato agli ordini attuali. Caratteri permessi: lettere, numeri e. L'etichetta deve avere al massimo 256 caratteri. strumento - strumento orderCommand - tipo di quantità ordine inviato - importo in milioni per il prezzo dell'ordine - prezzo preferito per ordine. Se zero, allora verrà utilizzato prezzo ultimo mercato visibile sul JForex. Il prezzo dovrebbe essere divisibile per 0,1 pip o ordine sarà respinto. In caso di ordini di mercato, il prezzo non corretta (peggio di mercato attuale) sarà cambiato a prezzo corrente e lo slittamento slittamento - slittamento. Il valore di slittamento significa seguente: se si utilizza il valore negativo allora predefinito di 5 pips se Double. isNaN (slittamento) vero allora non slittamento viene utilizzato in caso contrario, lo slittamento è impostato in pips, si dovrebbe passare 1, non 0,0001 stopLossPrice - prezzo del arrestare la perdita. Il prezzo dovrebbe essere divisibile per 0,1 pip o ordine sarà respinto takeProfitPrice - prezzo del take profit. Il prezzo dovrebbe essere divisibile per 0,1 pip o ordine sarà respinto Returns: nuova istanza ordine in stato IOrder. State. CREATED Produce: JFException - se l'etichetta non è valido o già esistente, se l'importo è inferiore a minimo consentito, se una parte del necessario parametri è nullo submitOrder Sottopone nuovo ordine. ordine restituito è in stato di IOrder. State. CREATED e sarà aggiornato allo stato IOrder. State. OPENED dopo Parametri di conferma server: label - utente identificatore definito per l'ordine. Etichetta deve essere univoco per l'account utente dato agli ordini attuali. Caratteri permessi: lettere, numeri e. L'etichetta deve avere al massimo 256 caratteri. strumento - strumento orderCommand - tipo di quantità ordine inviato - importo in milioni per il prezzo dell'ordine - prezzo preferito per ordine. Se zero, allora verrà utilizzato prezzo ultimo mercato visibile sul JForex. Il prezzo dovrebbe essere divisibile per 0,1 pip o ordine sarà respinto. In caso di ordini di mercato, il prezzo non corretta (peggio di mercato attuale) sarà cambiato a prezzo corrente e lo slittamento slittamento - slittamento. Il valore di slittamento significa seguente: se si utilizza il valore negativo allora predefinito di 5 pips se Double. isNaN (slittamento) vero allora non slittamento viene utilizzato in caso contrario, lo slittamento è impostato in pips, si dovrebbe passare 1, non 0,0001 ritorni: nuova istanza ordine in IOrder. State. CREATED stato Genera: JFException - se l'etichetta non è valido o già esistente, se l'importo è inferiore a minimo consentito, se alcuni dei parametri richiesti è submitOrder nullo Sottopone nuovo ordine. ordine restituito è in stato di IOrder. State. CREATED e sarà aggiornato allo stato IOrder. State. OPENED dopo la conferma del server. Nota: il valore predefinito di 5 pips slittamento viene utilizzato. Per specificare lo slittamento personalizzato, o lo slittamento disabilitare del tutto, si prega di utilizzare submitOrder estesa (.) I metodi. Parametri: label - utente identificatore definito per l'ordine. Etichetta deve essere univoco per l'account utente dato agli ordini attuali. Caratteri permessi: lettere, numeri e. L'etichetta deve avere al massimo 256 caratteri. strumento - strumento orderCommand - tipo di quantità ordine inviato - importo in milioni per il prezzo dell'ordine - prezzo preferito per ordine. Se zero, allora verrà utilizzato prezzo ultimo mercato visibile sul JForex. Il prezzo dovrebbe essere divisibile per 0,1 pip o ordine sarà respinto. In caso di ordini di mercato, il prezzo non corretta (peggio di mercato attuale) sarà modificato per prezzo e lo slittamento attuali Returns: nuova istanza ordine in stato IOrder. State. CREATED Genera: JFException - se l'etichetta non è valido o è già esistente, se l'importo è meno di minimo consentito, se alcuni dei parametri richiesti è nullo Vedere anche: submitOrder (String, strumento, OrderCommand, doppio, doppio, doppio). submitOrder (String, Strumento, OrderCommand, doppie, matrimoniali, doppie, matrimoniali, doppie). submitOrder (String, Strumento, OrderCommand, doppie, matrimoniali, doppie, matrimoniali, doppie, lungo). submitOrder (String, Strumento, OrderCommand, doppie, matrimoniali, doppie, matrimoniali, doppie, lungo, String) submitOrder Sottopone nuovo ordine. ordine restituito è in stato di IOrder. State. CREATED e sarà aggiornato allo stato IOrder. State. OPENED dopo la conferma del server. Nota: il valore predefinito di 5 pips slittamento viene utilizzato. Per specificare lo slittamento personalizzato, o lo slittamento disabilitare del tutto, si prega di utilizzare submitOrder estesa (.) I metodi. Parametri: label - utente identificatore definito per l'ordine. Etichetta deve essere univoco per l'account utente dato agli ordini attuali. Caratteri permessi: lettere, numeri e. L'etichetta deve avere al massimo 256 caratteri. strumento - strumento orderCommand - tipo di ordine inviato. Solo IEngine. OrderCommand. BUY e IEngine. OrderCommand. SELL ammessi in questo importo metodo - importo in milioni per i ritorni di ordine: nuova istanza ordine in stato IOrder. State. CREATED Produce: JFException - se l'etichetta non è valido o già esiste, se importo è inferiore minimo consentito, se alcuni dei parametri richiesti è nulla o se orderCommand non è comprare o vendere Vedi anche: submitOrder (String, strumento, OrderCommand, doppio, doppio, doppio). submitOrder (String, Strumento, OrderCommand, doppie, matrimoniali, doppie, matrimoniali, doppie). submitOrder (String, Strumento, OrderCommand, doppie, matrimoniali, doppie, matrimoniali, doppie, lungo). submitOrder (String, Strumento, OrderCommand, doppie, matrimoniali, doppie, matrimoniali, doppie, lungo, String) Restituisce ordine per etichetta, oppure null se è stato trovato nessun ordine Parametri getOrderById: OrderId - ordini id Restituisce: ordine o null. Having studiato il anatomia di una strategia JForex vuoto (Parte 1 e Parte 2), il suo tempo per sezionare uno funzionante. Maplay è la strategia che è incluso in ogni JForex API scaricare come una dimostrazione. È possibile trovare il codice sorgente completo di questa strategia nel srcsinglejartest nel pacchetto zippato JForex API. Ricordiamo che il metodo prima interfaccia che corre all'inizio della strategia è onStart. Il metodo onStart di maplay è riportato di seguito. Il motore variabili. indicatori. e la consolle sono i campi della classe maplay. Sono variabili globali all'interno della classe. Quali linee 42--44 fare è quello di salvare il IEngine. IIndicators. e IConsole oggetti per un uso successivo. L'ultima riga di onStart, la linea 45, è semplicemente quello di stampare un messaggio sulla tua console programma JForex per informare l'utente che la strategia è iniziata. Una volta onStart è terminata l'elaborazione, il server è in grado di mettere onTick se una zecca mercato arriva. Se la sua non durante le ore di mercato, quindi non c'è nessun segno di spunta e qualche altro evento potrebbe accadere invece di onTick. Pensate ai metodi come eventi piuttosto che un processo lineare. Si programma la vostra strategia JForex in base a ciò che si vuole fare con ciascuno dei sei eventi IStrategy Interface. Per questa particolare strategia, il programmatore decide di attuare la loro strategia a livello di zecca. Come tale, gran parte del algoritmo di negoziazione risiede in onTick per maplay. Si noti che questa è una scelta di progettazione, è possibile utilizzare onBar se si desidera che la strategia per elaborare a livello di bar (o si può utilizzare sia onTick e onBar). Ecco il codice sorgente per onTick in maplay. A colpo d'occhio, si può notare che le variabili MA0 e MA1 svolgono un ruolo chiave nel determinare la configurazione. Suggerimento: per decodificare una strategia, può essere più facile lavorare a ritroso dal momento in cui viene effettuato l'ordine, che è fatto da engine. submitOrder in questo caso. ma0 e MA1 tengono i risultati di medie mobili esponenziali (EMA). ma0 è il valore corrente. MA1 è il valore barre precedente. Linee 56--63 controllo con se i test (linee 56 e 60) per vedere se una delle variabili contenere i dati non validi. Se i dati non è valido, l'indicatore viene calcolato e il resto del onTick viene saltata con l'istruzione di ritorno sulla linea 62. Nota: I valori degli indicatori possono talvolta essere valido (zero, negativo o Double. NaN seconda della particolare implementazione dell'indicatore. ) se non vi sono dati sufficienti per calcolare o si è verificato un errore, per gli esempi. Gli EMA sono recuperati nelle linee 57 e 59 utilizzando i IIndicators oggetto (che è stato inizializzato in onStart). Il JForex Wiki fornisce una spiegazione del suo utilizzo. Si noti che MA1 è una matrice, che è stata dichiarata in linea 38 con una dimensione equivalente al numero di tutti gli strumenti JForex disponibili. In particolare, viene utilizzato con un valore speciale indice come in ma1instrument. ordinal (). In altre parole, si chiede la scanalatura strumenti attuali nella matrice MA1. Lo strumento corrente è quella che viene passato al metodo in linea 55. Scendendo il codice, un altro punto di interesse è la linea 65, che mostra l'uso di instrument. getPipValue (). Linea 67 verifica se il numero totale corrente di posizione è zero. Se lo è, il che significa posizione non aperto, quindi la strategia procede a controllare il segnale di entrata per entrare in un commercio (linee 68--76). positionsTotal () è un metodo personalizzato definito nelle linee 84--92. Esso utilizza un ciclo for per scorrere tutti gli ordini ottenuti da engine. getOrders (strumento) Una vota che della condizione lungo o corto, le linee 68 e 72, rispettivamente, è soddisfatto, la strategia sottopone un ordine in linea 69 per un breve e linea 73 per lungo. Le indicazioni di presentare ordini di mercato sono descritti nel JForex Wiki. Quando si smette di questa strategia, OnStop (linee 48--53) è chiamato. Per questa strategia, il programmatore ciclo in tutti gli ordini di nuovo utilizzando engine. getOrders () e chiude ogni della posizione con un comando order. close () in linea 50. Questo è per questa strategia banale. Se c'è un punto che si dovrebbe ricordare. Nota il mio uso dei molti collegamenti al javadoc JForex e JForex Wiki corso di questo post. Si rischia di trovare molti dei vostri risposte da queste due fonti. In caso contrario, c'è sempre la scheda di supporto JForex. Ora che hai avuto un'idea di come funziona MAPlay. java, il suo tempo per testarlo. Nel prossimo post nel mese di gennaio, si discuterà il JForex storico tester e cosa guardare per quando si esegue una strategia live. Having studiato l'anatomia di una strategia JForex vuoto (Parte 1 e Parte 2), il suo tempo per sezionare uno funzionante. Maplay è la strategia che è incluso in ogni JForex API scaricare come una dimostrazione. È possibile trovare il codice sorgente completo di questa strategia nel srcsinglejartest nel pacchetto zippato JForex API. Ricordiamo che il metodo prima interfaccia che corre all'inizio della strategia è onStart. Il metodo onStart di maplay è riportato di seguito. Il motore variabili. indicatori. e la consolle sono i campi della classe maplay. Sono variabili globali all'interno della classe. Quali linee 42--44 fare è quello di salvare il IEngine. IIndicators. e IConsole oggetti per un uso successivo. L'ultima riga di onStart, la linea 45, è semplicemente quello di stampare un messaggio sulla tua console programma JForex per informare l'utente che la strategia è iniziata. Una volta onStart è terminata l'elaborazione, il server è in grado di mettere onTick se una zecca mercato arriva. Se la sua non durante le ore di mercato, quindi non c'è nessun segno di spunta e qualche altro evento potrebbe accadere invece di onTick. Pensate ai metodi come eventi piuttosto che un processo lineare. Si programma la vostra strategia JForex in base a ciò che si vuole fare con ciascuno dei sei eventi IStrategy Interface. Per questa particolare strategia, il programmatore decide di attuare la loro strategia a livello di zecca. Come tale, gran parte del algoritmo di negoziazione risiede in onTick per maplay. Si noti che questa è una scelta di progettazione, è possibile utilizzare onBar se si desidera che la strategia per elaborare a livello di bar (o si può utilizzare sia onTick e onBar). Ecco il codice sorgente per onTick in maplay. A colpo d'occhio, si può notare che le variabili MA0 e MA1 svolgono un ruolo chiave nel determinare la configurazione. Suggerimento: per decodificare una strategia, può essere più facile lavorare a ritroso dal momento in cui viene effettuato l'ordine, che è fatto da engine. submitOrder in questo caso. ma0 e MA1 tengono i risultati di medie mobili esponenziali (EMA). ma0 è il valore corrente. MA1 è il valore barre precedente. Linee 56--63 controllo con se i test (linee 56 e 60) per vedere se una delle variabili contenere i dati non validi. Se i dati non è valido, l'indicatore viene calcolato e il resto del onTick viene saltata con l'istruzione di ritorno sulla linea 62. Nota: I valori degli indicatori possono talvolta essere valido (zero, negativo o Double. NaN seconda della particolare implementazione dell'indicatore. ) se non vi sono dati sufficienti per calcolare o si è verificato un errore, per gli esempi. Gli EMA sono recuperati nelle linee 57 e 59 utilizzando i IIndicators oggetto (che è stato inizializzato in onStart). Il JForex Wiki fornisce una spiegazione del suo utilizzo. Si noti che MA1 è una matrice, che è stata dichiarata in linea 38 con una dimensione equivalente al numero di tutti gli strumenti JForex disponibili. In particolare, viene utilizzato con un valore speciale indice come in ma1instrument. ordinal (). In altre parole, si chiede la scanalatura strumenti attuali nella matrice MA1. Lo strumento corrente è quella che viene passato al metodo in linea 55. Scendendo il codice, un altro punto di interesse è la linea 65, che mostra l'uso di instrument. getPipValue (). Linea 67 verifica se il numero totale corrente di posizione è zero. Se lo è, il che significa posizione non aperto, quindi la strategia procede a controllare il segnale di entrata per entrare in un commercio (linee 68--76). positionsTotal () è un metodo personalizzato definito nelle linee 84--92. Esso utilizza un ciclo for per scorrere tutti gli ordini ottenuti da engine. getOrders (strumento) Una vota che della condizione lungo o corto, le linee 68 e 72, rispettivamente, è soddisfatto, la strategia sottopone un ordine in linea 69 per un breve e linea 73 per lungo. Le indicazioni di presentare ordini di mercato sono descritti nel JForex Wiki. Quando si smette di questa strategia, OnStop (linee 48--53) è chiamato. Per questa strategia, il programmatore ciclo in tutti gli ordini di nuovo utilizzando engine. getOrders () e chiude ogni della posizione con un comando order. close () in linea 50. Questo è per questa strategia banale. Se c'è un punto che si dovrebbe ricordare. Nota il mio uso dei molti collegamenti al javadoc JForex e JForex Wiki corso di questo post. Si rischia di trovare molti dei vostri risposte da queste due fonti. In caso contrario, c'è sempre la scheda di supporto JForex. Ora che hai avuto un'idea di come funziona MAPlay. java, il suo tempo per testarlo. Nel prossimo post nel mese di gennaio, si discuterà il JForex storico tester e cosa guardare per quando si esegue una strategia dal vivo. Abbiamo esaminato quattro dei sei metodi nel IStrategy di interfaccia in un post precedente. Gli ultimi due metodi, onTick e onBar, è dove la vostra strategia di connettersi con i dati di mercato. Uno dei due, o entrambi, di questi metodi è dove si mette il algoritmo di negoziazione in. La vostra strategia sarebbe quindi in grado di elaborare i dati di mercato man mano che arrivano uno tickbar alla volta. Ricordiamo che IStrategy Interface è lo scheletro della vostra strategia. E quell'oggetto IContext è il cuore della vostra strategia. onTickonBar è il capo della vostra strategia, che contiene l'algoritmo di trading, che è il cervello. Ecco la definizione del metodo di onTick. Importante: onTick viene chiamato per ogni strumento che la vostra piattaforma JForex è sottoscritto (la lista strumento nella tua casella di lavoro). Permettetemi di dire che ancora una volta, onTick viene chiamato per ogni strumento che la vostra piattaforma JForex è sottoscritto. La pratica standard è di filtrare le zecche per gli strumenti che non volete con una semplice dichiarazione IF-ritorno. se (strumento myInstrument) restituisce i dati tick effettivo viene passato alla vostra strategia utilizzando l'oggetto ITick dal parametro metodi onTick. Date un'occhiata all'ingresso javadoc ITick per vedere quello che offre. onBar funziona in modo simile a onTick. In quale onBar è chiamata per ogni strumento inscritto e il periodo noto per JForex. Allo stesso modo, si deve filtrare tutti gli strumenti e periodi indesiderati o risultati altrimenti non ci sarà da aspettarsi da vostra strategia. Un altro punto da notare è che onBar fornisce sia una IBar Askbar e IBar bidBar, che rappresentano le barre di chiedere e offerta. Domanda: Cosa succede quando due o più periodi si sovrappongono come in 13:45 1, 5, e 15-minuti bar sono tutti arrivano allo stesso tempo (per non parlare dei periodi in pochi secondi troppo). Risposta: Secondo Dukascopy supporto nel forum, sono disponibili in un ordine rigoroso, per esempio Essi sono disponibili in cicli, in cui i periodi più piccoli viene prima (1 min 1 min 1 min 1 min 1min 5min 1min 1min 1min 1min 1min 5min.). Assistenza JForex Come si programma la vostra strategia con JForex, è senza dubbio venire con domande di tua scelta. Il posto migliore da porsi è al Forum ufficiale di supporto JForex. Questa è l'ultima delle tre risorse essenziali JForex che ho accennato in precedenza. Anche se non avete qualsiasi domanda specifica, ci sono codici di esempio, la discussione di codifica, e centinaia di QampA esistenti da altri sviluppatori JForex postato nel forum. La discussione è stata finora molto elevato. Per mostrare ciò che si può effettivamente fare in caso di IStrategy, ci sarà sezionare una strategia di lavoro nel prossimo post. E che altro di meglio da esaminare che il più popolare strategia di JForex di tutti - MAPlay. java. Proseguendo da parte 1 di questa serie: Per iniziare l'apprendimento di programmazione JForex. ora erano pronti a discutere la cosa reale. Si costruisce strategie JForex utilizzando l'interfaccia IStrategy (Che cosa è un Interface). In sostanza, l'interfaccia è uno scheletro di codice con una serie di metodi vuoti predefiniti che il youll necessità di attuare da soli. I sei metodi standard della IStrategy Interface sono: Di seguito è un'implementazione vuota IStrategy Interface, noto anche come strategia JForex. Questo codice verrà compilato bene in JForex e si può anche funzionare. Ma si pretende molto fare nulla, perché non esiste un codice per l'esecuzione in ciascuno dei metodi. Ognuno dei sei metodi sarà solo chiamato e uscire immediatamente. Ogni del metodo è innescato da un evento specifico. Probabilmente si può indovinare quello che sono dal loro nome. onStart (linea 5) Questo è il primo metodo che viene chiamato quando si esegue la vostra strategia. Verrà eseguito una sola volta, all'inizio della vostra strategia. Normalmente fate la vostra inizializzazione qui. La cosa da notare per onStart è in linea 5 del codice. La firma del metodo di onStart è l'oggetto nel parametro e dato a voi in questo metodo è un oggetto IContext. Se IStrategy è lo scheletro, poi IContext è il cuore della strategia. Si prega di dare un'occhiata a questo link javadoc per IContext per vedere che cosa questo oggetto fa. Javadoc. Ora è un buon momento per introdurre il secondo dei tre risorse essenziali di un programmatore JForex. Il JForex Javadoc è il singolo documentazione delle API più up-to-date spiegare ogni singolo oggetto e metodi dell'API JForex. Pensate a come un manuale di riferimento. Si noti che, sebbene la sua completa, la maggior parte della spiegazione è molto scarsa e anche incompleta. IContext è un oggetto nucleo JForex accedere a molte importanti componenti del sistema JForex, quali motore ordinamento, grafici, console, indicatori. Si ottiene l'idea. E 'importante in genere si desidera mantenere una copia locale di esso in quanto questo è l'unica volta (in onStart) che questo oggetto verrà passato a voi in IStrategy. onStop (linea 26) Come suggerisce il nome, questo metodo viene chiamato una volta che si invia un comando di arresto per la vostra strategia. Voi fate il vostro programma di wrap-up come la registrazione e dati di lavaggio qui. Non molto fuori dal comune con questo. onMessage (linea 18) considerando sappiamo quando verranno chiamati onStart e onStop, onMessage è un metodo asincrono in quanto non si sa esattamente quando verrà eseguito. Questo metodo viene chiamato quando il server invia Dukascopy vostra strategia di un messaggio. Ad esempio, il server chiama onMessage per farvi sapere che l'ordine è stato riempito. È ricevere ed elaborare il messaggio del server accedendo l'oggetto IMessage che viene passato a voi. Importante: Non vi è alcuna garanzia che riceverete ogni messaggio inviato alla vostra strategia dal server. Forse il vostro processo strategico è intasato. O forse la tua connessione a Internet ha avuto un incidente di percorso. Se la strategia di onMessage non ottiene chiamato dal server per qualsiasi ragione, il server couldnt cura meno e di solito essere il controllo né di riprovare. Quindi non fare nulla critici come la gestione degli ordini in onMessageQ onAccount (linea 22) Questo metodo viene chiamato ogni volta che viene ricevuto l'aggiornamento informazioni relative all'account. Il metodo prevede l'accesso all'oggetto IAccount. che si usa per ottenere informazioni sul tuo conto. Dire se si dispone di una posizione aperta, le informazioni dell'account cambia su ogni tick perché il capitale è in contanti profitloss non realizzati. In tal caso, onAccount è chiamato ogni 5 secondi dal server al massimo per evitare di intasare la vostra strategia. Più Importante: L'oggetto IAccount non è collegata in diretta al tuo account nel server. Si tratta semplicemente di una fotografia istantanea del vostro conto. Ad esempio, se si mantiene una copia locale di un oggetto IAccount. Fare qualche trading per cambiare il vostro equilibrio. Poi fare la stessa IAccount per le informazioni saldo del conto, non si vedrà un cambiamento. Come tale, aggiornare sempre il copia locale del IAccount all'interno del metodo onAccount per mantenere le informazioni conto up-to-date per le Strategie di utilizzo. To be continued onStart, onStop, onMessage e metodi onAccount sono metodi amministrativi per la vostra strategia. Gli ultimi due metodi che ben discutono, onTick e onBar, è dove la magia accade in una strategia. Sto salvando il meglio per ultimo nel prossimo post. Il problema più grande che ho avuto quando si impara a programmare le mie strategie di trading in JForex sta trovando dove cominciare apprendimento. Ci sono stati pochi documentazione JForex disponibile al momento e ho dovuto insegnare a me stesso attraverso tentativi ed errori scrupoloso con l'aiuto di supporto tecnico Dukascopys. Le cose sono certamente cambiate per il meglio come comunità JForex sta cominciando a germogliare e la documentazione perché è almeno sufficiente per ottenere chiunque iniziato. Questo post è il primo di una serie di Guida pratica ai principianti di imparare la programmazione JForex mettendo tutte queste risorse in un tutorial. JForex è uno strumento di Java JForex non è in realtà un linguaggio di programmazione. Si tratta di un'interfaccia di programmazione delle applicazioni (API) per l'utilizzo con il linguaggio di programmazione Java standard. Come tale, il primo passo per imparare a programmare in JForex è imparare Java. Fortunatamente, Java è uno dei linguaggi di programmazione più popolari. Quindi therere abbondanza di risorse e fuori dal web per saperne di programmazione Java. Alcuni esempi di tutorial online gratuiti sono: I tutorial Java - Si tratta di un tutorial ufficiale da parte dello sviluppatore di Java se stessi. Altamente raccomandato. I principianti Java Tutorial - più adatto per i principianti assoluti alla programmazione. Se si preferisce un libro, mi sento di raccomandare Head First Java, 2nd Edition. Ho spazzolato sulla mia Java da questo libro. Dont soffermarsi su Java troppo però come avete solo bisogno di conoscere le basi per iniziare con JForex. Basta leggere alcuni capitoli per capire la sintassi di Java e poi andare avanti. Si può sempre fare riferimento a loro più tardi. Tuffarsi JForex La JForex Wiki è uno dei tre risorse essenziali per i programmatori JForex. Sarò riferisco ad alcune pagine specifiche del Wiki in gran parte di questa serie di post. Se havent già fatto, iscrizione per un account demo a Dukascopy. Quindi lanciare la piattaforma JForex e seguire le istruzioni per l'uso in pagina wiki JForex per assemblare la vostra prima strategia JForex Fin qui tutto bene A questo punto, spero che tu possa capire il codice sorgente Java di base e saper startopen, compilare ed eseguire un strategia JForex. Nel prossimo post di questa serie di apprendimento JForex, studieremo l'anatomia di una strategia JForex. C'è solo altri due giorni di negoziazione a sinistra in aprile Dukascopy JForex strategia Contest. Sto attualmente al 6 °. Ma c'è una lotta feroce per il mio posto. Ive è mossa tra il 6 e l'8 per tutta la settimana, anche se io ho mai fatto qualsiasi commercio. Le altre persone stanno mettendo su grandi scommesse sperando di spremere in un top 6. Perché Secondo la struttura palio, 4 al 6 vincitori riceveranno ciascuno 1.000. Considerando che il 7 al 10 riceveranno solo 500. Con il mio conto corrente in piedi a 120.032 (20 guadagno) di questo mese, è abbastanza fattibile per gli altri per cercare di prendere il mio posto. Vedere la tabella sottostante per i primi 10 classifica stesura di questo documento. Le mie opzioni sono a uno accendere la mia strategia per rendere più commerci o non fare nulla. Il rischio in esecuzione di nuovo la mia strategia è che io possa perdere soldi e farmi ancora meno competitivo. Il mio strategys lasso di tempo di lavoro è in ore, quindi non c'è neanche tanto spazio per l'errore. In quanto tale, ritengo che con solo due giorni di negoziazione a sinistra, il tempo non è dalla mia parte. D'altra parte, io probabilmente perderò il mio 6 ° posto come io non sono lontano da altri dietro di me. Quindi, se non faccio niente, sarò molto probabilmente finirà per 7 o 8 e perdere la metà del premio in denaro. Dopo aver riflettuto su questo per breve tempo, Ive ha deciso di non fare nulla. Le probabilità sono davvero troppo contro di me. Ho visto troppe persone in questo mesi concorso rischiando di spostarsi verso l'alto da un buon grado solo di esporsi troppo e perdere fuori dalla top 10 completamente. Ho scoperto che la strategia di competere nel Dukascopy JForex strategia concorso non ha bisogno di essere al 100 automatica Secondo Contest di sostegno nel forum ufficiale. Posso impostare i parametri come prendere obiettivo di profitto, stop loss, e long-only o corto solo compravendite. Che rendono questo concorso sostanzialmente più facile da programmare, come posso attuare una strategia semi-automatica, che è quello che preferisco nel mio trading reale. Il problema con la costruzione di un sistema di trading automatico è che le condizioni di mercato cambiano frequentemente e senza preavviso. Quindi, ci vuole più di un paio di righe di programmare un sistema molto redditizio per filtrare condizioni indesiderabili. Come ho discusso prima, perché tutti i vincitori di questo concorso devono pubblicare i loro codici sorgente, non voglio spendere troppo tempo su questo concorso. Ora che so di poter scambiare semi-automaticamente a questo concorso. Posso solo fare la mia analisi manualmente e quindi utilizzare la strategia per eseguire operazioni quando lo desiderano. Questo è esattamente come il mio processo di negoziazione vera e propria, come illustrato in precedenza. Come potete immaginare, sono molto contento di questa notizia. Non ho bisogno di graffiare più la testa per costruire una nuova strategia per mesi il prossimo concorso. Ho programmato e testato diverse nuove idee negli ultimi 2 settimane, ma havent trovato niente di meglio che la mia strategia esistente. che ha fatto bene nel mese di aprile. Questa strategia Contest Dukascopy JForex è stato un grande stimolo per me per prendere confidenza con JForex. Come ho intenzione di usarlo per il mio vero negoziazione a Dukascopy (aprire un conto con questo link di affiliazione per ricevere 35 sconto sulle commissioni) entro la fine dell'anno, questa è una situazione win-win per me, come ho imparato l'API e possibilmente vincere qualche premio soldi allo stesso tempo. Questa è una spiegazione della mia strategia di trading automatizzato per la Dukascopy JForex strategia Contest nel mese di aprile. Questa strategia appena fatto il suo primo commercio oggi dopo aver eseguito per circa 72 ore. Il mio conto demo contest si è chiuso con un guadagno di 7 in questo primo commercio. Si noti che questa strategia è costruita per competere in un concorso e non per la negoziazione vera e propria (cioè la sua puramente un no scommessa costo). Ecco il concetto per questa configurazione trading ad alta probabilità. Facendo riferimento alla figura 1 sotto, la freccia rossa indica il mio ingresso a corto di EURGBP oggi. Questi sono gli indicatori tecnici di analisi della strategia utilizza: Trend: segnalato dal 50 bar media mobile sopra (rialzista) o al di sotto (ribassista) il 200 bar media mobile. Momentum: ipervenduto o condizioni RSI di ipercomprato, ma non utilizzati in maniera tradizionale. Volatilità: Io uso il canale Keltner per misurare la volatilità. l'azione dei prezzi: osservare il comportamento candeliere di identificare la continuazione di tendenza. Questo è dove il segreto di questa strategia accade. Spiegherò questo seguito. Si noti che ho usato un Bande di Bollinger nel grafico di figura 1, perché non riuscivo a trovare l'indicatore Keltner Channel nella Metatrader (il mio software grafici). Esso non influisce sul mio illustrazione concettuale comunque. La messa a punto: Identificare tendenza generale tramite 50200 medie mobili come spiegato sopra. prezzo Conferma è ancora giocando al trend verificando se il prezzo corrente di mercato si trova sul lato destro delle 200 barre di media mobile. Prezzo al di sopra e al di sotto per bullish per ribassista. Una volta che i passaggi 1-2 sono a posto, il suo presupposto che la tendenza è forte. Cerchiamo una messa a punto nella direzione tendenze. In particolare, cerchiamo una configurazione controtendenza ritracciamento fallito utilizzando candeliere in combinazione con il canale Keltner. Sembra fantasia, ma la sua semplice. Usando un esempio lato corto, le barre alte deve penetrare sopra il canale Keltner ancora chiude all'interno di esso. Poi la voce di breve viene segnalata. L'opposto di un entry-lato lungo. RSI condizioni di ipercomprato e ipervenduto sono utilizzati per filtrare i movimenti contro-tendenza lento e costante (quelli sono il male). Un altro vantaggio di utilizzare un canale di prezzo è che io uso anche di agganciare il mio obiettivo take profit e stop loss. Come ho detto nel mio precedente post, perché si aspetta che Dukascopy vincente concorrenti a presentare le loro codici sorgente, non sto usando niente di proprietà o straordinaria qui. Come tale, questo è totalmente diverso da quello che io uso per il commercio per conto mio. Vale a dire più affidamento su indicatori e meno su azione dei prezzi e gestione del rischio.

No comments:

Post a Comment