V Segui ProRealTime Programming su Google+ per le novità sul linguaggio di programmazione di ProRealTime.

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "V 4.0.1 20150427. Segui ProRealTime Programming su Google+ per le novità sul linguaggio di programmazione di ProRealTime."

Transcript

1 Gli strumenti di programmazione di sistemi di trading ProRealTime permettono di creare strategie di investimento che possono essere eseguite in backtest o con sistemi automatici di trading. Segui ProRealTime Programming su Google+ per le novità sul linguaggio di programmazione di ProRealTime. V

2 SOMMARIO Introduzione 2 Accedere alla programmazione di sistemi di trading...2 La finestra di creazione di sistemi di trading...3 Scorciatoie di tastiera...4 La Programmazione di sistemi di trading 5 Promemoria sulla programmazione ProBuilder...5 Entrare e uscire dal mercato...5 Gli Stop e Target...8 Stop di protezione...8 SET target profit...8 Trailing Stop...9 Uso di "Set Target" e "Set Stop" con istruzioni condizionali "IF"...9 Stop multipli e livelli di target...10 Interrompere un sistema di trading con QUIT...13 Monitoraggio delle posizioni...13 Variabili di stato delle posizioni...13 Grandezza delle variabili della posizione...14 TradeIndex...14 TradePrice...14 PositionPerf...15 PositionPrice...15 StrategyProfit...15 Definizione dei parametri di esecuzione di sistemi di trading...16 Cumulo di ordini...16 PreLoadBars...17 FlatBefore e FlatAfter...18 NoCashUpdate (Backtest solamente)...18 MinOrder and MaxOrder (backtest solamente)...18 Richiamo d'indicatori...19 Indicatori ProRealTime...19 Indicatori personalizzati...19 Suggerimenti per la programmazione...19 Ridurre il numero di richiami agli indicatori ProRealTime...19 Richiami d'indicatori personalizzati...20 ProBacktest Backtesting di sistemi di trading 23 Money Management...24 Capitale iniziale...24 Brokeraggio: commissioni e gestione del rischio...24 Ottimizzazione delle variabili...26 Definizione del periodo di esecuzione del backtest...28 Personalizzazione degli orari di trading per il backtest...28

3 Ragioni di interruzione di un ProBacktest...30 Visualizzazione dei valori delle variabili backtest (a partire da ProRealTime v10.2)..31 AutoTrading ProOrder 32 Preparate un sistema di trading per l'esecuzione automatica...33 Come iniziare un sistema di trading su ProOrder e controllarne i risultati...35 Parametri del trading automatico e condizioni di esecuzione...39 Parametri del sistema di trading...39 Stop automatico dei sistemi di trading...40 Coesistenza nella piattaforma del trading manuale e automatico...41 Sistemi di trading multipli in corso di esecuzione sullo stesso valore...42 Restrizioni per indicatori...43 Informazioni riguardanti il fuso orario e gli orari di trading personalizzati...43 Allegato A: Risultati del sistema di trading 44 Curva guadagni e perdite...44 Grafico delle posizioni...45 Rapporto dettagliato...46 Allegato B: Esempi di codici dettagliati 50 Sistema di trading basato su Heikin Ashi...50 Sistema di trading basato sullo ZigZag...51 Sistema di trading Breakout Range con Trailing Stop...52 Sistema di trading basato sullo stocastico lisciato...53 Swing Trading, ADX e Media Mobile...54 Sistema di trading che utilizza un contatore di posizioni...55 Sistemi di trading che utilizzano TradeIndex Find inside bar...56 Sistemi di money management...57 Stop di protezione e Target...57 Stop d'inattività...57 Cumulo di ordini Aggiunta di una posizione esistente con l'uso di un contatore di posizioni...58 La martingala classica...59 La grande martingala...60 La Piquemouche...61 La piramide d'alembert...62 L'inverso d'alembert...63 Glossario 64 Avvertimento: ProRealTime non propone servizi di consiglio su investimenti. Gli esempi presentati in questo manuale sono a scopo pedagogico. Tutte le informazioni presenti sono a carattere generale e non rappresentano in nessun caso informazioni o consulenze personalizzate o incitazioni a comprare o vendere strumenti finanziari. Le performances passate non rappresentano previsioni per il futuro. Ogni sistema di trading può esporre a un rischio di perdite superiori all'investimento iniziale.

4 Introduzione alla programmazione dei sistemi di trading su ProRealTime v10 Questa versione del manuale di programmazione si applica a ProRealTime v10 e superiori. Gli strumenti del sistema di trading su ProRealTime permettono di creare strategie d investimento personalizzate via la programmazione o la creazione assistita (non é richiesta programmazione). Questi sistemi di trading possono essere eseguiti: Come backtest per testarne le performance sui dati storici di un valore. Come sistemi automatici di trading: gli ordini vengono passati in tempo reale da un trading o dal conto di PaperTrading. La programmazione dei sistemi di trading utilizza il linguaggio di programmazione ProBuilder che é anche usato per scrivere indicatori su ProRealTime ma prevede strumenti addizionali che si applicano solo alla programmazione di sistemi di trading. I programmi del sistema di trading includono istruzioni per prendere posizioni, impostare stop e la gestione del rischio di ogni sistema di trading basato su condizioni personalizzate come: Indicatori forniti con la piattaforma o indicatori che avete programmato voi stessi Le performance passate del vostro sistema di trading Gli ultimi ordini del vostro sistema di trading I risultati di un sistema di trading vengono presentati sotto forma di: Curva dei guadagni e perdite che mostra lo stato dei guadagni e perdite di un sistema su un particolare strumento. Istogramma delle posizioni che mostra le posizioni del sistema (barre verdi per le posizioni di acquisto e barre rosse per le posizioni di vendita alla scoperto). Non viene mostrata nessuna barra se non ci sono posizioni per un particolare periodo di tempo. Rapporto dettagliato che indica le statistiche del vostro sistema per il valore, nel periodo di tempo in cui é stato backtestato o eseguito. Con il backtest, si possono solo ottimizzare le variabili del vostro sistema di trading per vedere quali valori danno i migliori risultati per il periodo di storico che state esaminando. Nel trading automatico, gli ordini piazzati attraverso sistemi di trading appaiono nel vostro portafoglio e nella lista degli ordini. Il portafoglio viene aggiornato con i guadagni e perdite fatte. Questo manuale é organizzato in questo modo: La prima parte spiega come accedere alle funzionalità di creazione di sistemi di trading. La seconda parte presenta le istruzioni ProBuilder usate per programmare sistemi. La terza parte spiega come backtestare sistemi di trading con ProBacktest. La quarta parte spiega come eseguire un sistema di trading automaticamente. Gli allegati alla fine del manuale mostrano come siano visualizzati i risultati dei sistemi di trading ed inoltre forniscono alcuni esempi di programmi oltre al glossario del linguaggio ProBuilder. Consigliamo agli utilizzatori principianti di guardare il video intitolato "Come impostare un Backtest in pochi click". Le idee espresse in questo manuale mirano ad insegnarvi come scrivere sistemi di trading e testare le vostre proprie idee. Non si tratta in nessun caso di consigli in investimento. Vi auguriamo un ottimo successo, buona lettura! V / 75

5 Introd u zione Introduzione Accedere alla programmazione di sistemi di trading La finestra di creazione di sistemi di trading é disponible a partire dal tasto "Indicatori e Sistemi di Trading" che si trova in alto a destra di ogni grafico della piattaforma. Par default, la finestra di gestione si apre sulla linguetta "Indicatori". Posizionatevi sulla seconda linguetta "Backtesting e Trading Automatico". Potrete quindi: Accedere alla lista dei sistemi di trading esistenti (predefiniti o personalizzati) Creare un nuovo sistema di trading, da applicare in seguito ad un valore qualsiasi Modificare o cancellare un sistema di trading esistente Importare o esportare sistemi di trading. V / 75

6 Introd u zione La finestra di creazione di sistemi di trading La finestra di creazione di sistemi di trading é composta da due zone principali: La zona di creazione (assistita o per programmazione) nella parte sinistra della finestra. La zona d'applicazione del sistema nella parte destra, che comprende la linguetta ProBacktest per backtestare un sistema di trading e la linguetta AutoTrading ProOrder per eseguire automaticamente un sistema di trading. L'impostazione del ProBacktest é descritta nella sezione 3 di questo manuale. La zona di creazione, vi permette di: Programmare il sistema di trading usando zona di testo. Utilizzare la funzione di aiuto "Inserisci funzione", che vi permette di aprire una nuova finestra con una lista di istruzioni di ProBuilder e sistemi di trading suddivisi in diverse categorie per aiutarvi durante la programmazione. Ritroverete ugualmente testi d'aiuto legati all'istruzione o funzione selezionata nella parte bassa della finestra. V / 75

7 Introd u zione Esempio: Utilizziamo la biblioteca delle funzioni cliccando su "Inserisci funzione". Andate alla sezione "Comandi del sistema di trading" e cliccate su "BUY", poi cliccate sul tasto "Aggiungi". Il comando verrà aggiunto alla zona di programmazione. Proviamo quindi a creare una linea intera di codice. Supponiamo per esempio di voler acquistare 10 titoli a prezzo di mercato. Procedete come sopra per recuperare nell'ordine le istruzioni "SHARES", "AT" e "MARKET" (separate ogni parola con uno spazio). Indicate tra "BUY" e "SHARES" il numero da comprare (10). Otterrete quindi l'istruzione "BUY 10 SHARES AT MARKET" che ordina l'acquisto di 10 titoli, lotti o contratti a prezzo di mercato. La seguente sezione presenta tutte le istruzioni disponibili per la programmazione di sistemi di trading. Per vedere alcuni esempi di sistemi di trading completi, consulta l'allegato B alla fine del manuale. Scorciatoie di tastiera La finestra di creazione del sistema di trading ha un serie di funzionalità a cui é possibile accedere dalle scorciatoie di tastiera a partire della versione 10 di ProRealTime: Seleziona tutto (Ctrl + A): Seleziona tutto il testo nella finestra programmazione Copia (Ctrl + C): Copia il testo selezionato Incolla (Ctrl +X): Incolla il testo copiato Annulla (Ctrl + Z): Annulla l'ultima azione nella finestra programmazione Ripristina (Ctrl + Y): Ripristina l'ultima azione nella finestra programmazione Trova / Sostituisci (Ctrl + F): Trova un testo nella finestra programmazione / sostituisci un testo nella finestra programmazione (questa funzionalità é minuscola maiuscola) Commenta / Decommenta (Ctrl + R): Commenta il codice selezionato / Decommenta il codice selezionato (il codice commentato sarà preceduto da "//" o "REM" e di colore grigio. Sarà preso in considerazione quando il codice é eseguito). Per gli utenti Mac, la stessa scorciatoia di tastiera puo' essere accessibile con il tasto "Apple" al posto del tasto "Ctrl". La maggior parte di queste funzionalità possono essere accessibili con un clic destro nella finestra di programmazione. V / 75

8 L a Programmazione d i si stemi di trading La Programmazione di sistemi di trading Avvertimento: Gli esempi presentati in questo manuale sono a scopo pedagogico. Tutte le informazioni presenti sono a carattere generale e non rappresentano in nessun caso informazioni o consulenze personalizzate o incitazioni a comprare o vendere strumenti finanziari. Le performances passate non rappresentano previsioni per il futuro. Ogni sistema di trading può esporre a un rischio di perdite superiori all'investimento iniziale. Promemoria sulla programmazione ProBuilder Vi consigliamo di leggere il manuale di programmazione ProBuilder consacrato alla programmazione di indicatori. Questa sezione elenca le istruzioni che sono specifiche dei sistemi di trading. ProBuilder é il linguaggio di programmazione usato nella piattaforma. Questo linguaggio é molto semplice da utilizzare e offre molte possibilità. E' basato sui seguenti principi: L'unità di base é la candela e l'unità di tempo é la stessa di quella del grafico sottostante. I calcoli sono dati alla fine di ogni barra. I programmi di ProBuilder che includono sistemi di trading e tutte le loro funzioni sono valutati alla fine di ogni barra dall'inizio alla fine. Tutte le istruzioni per piazzare ordini sono attivate dopo che i calcoli sulla candela corrente sono terminati (ossia gli ordini saranno eseguiti all'apertura della candela successiva). Entrare e uscire dal mercato E' necessario differenziare le istruzioni a seconda del tipo di posizione: Posizioni lunghe: BUY istruzione di acquisto dei titoli (entrata long) SELL istruzione di vendita di titoli acquistati (uscita long) L'istruzione BUY permette di aprire (o rinforzare) una posizione lunga sul mercato. E' associata all'istruzione SELL che permette di chiudere o chiudere parzialmente una posizione. L'istruzione SELL non ha nessun effetto se non c'é nessuna posizione lunga aperta. Posizioni corte: SELLSHORT istruzione di ventita allo scoperto di titoli (entrata short) EXITSHORT istruzione di riacquisto di titoli venduti allo scoperto (uscita short) Queste due istruzioni funzionano in maniera simmetrica con BUY e SELL. L'istruzione EXITSHORT non ha nessun effetto se non c'é nessuna posizione corta aperta. Non é possibile prendere una posizione lunga e corta allo stesso tempo sullo stesso titolo. In pratica, cio' significa che é anche possibile chiudere una posizione lunga con l'istruzione SELLSHORT o chiudere una posizione corta con l'istruzione BUY. Nota bene: Pensate a verificare la grandezza massima della posizione che avete definito nella sezione Impegno sul Mercato per il ProBacktest o su ProOrder per i sistemi di trading automatici. Se provate a piazzare un ordine per un importo più importante della grandezza massima della posizione autorizzata, l'ordine sarà rigettato e la vostra posizione originale sarà mantenuta. Ognuno di questi comandi puo' essere seguito dagli elementi seguenti, che verranno descritti qui di seguito: <Ordine> <Quantità> AT <tipo> Esempio: BUY 1000 CASH AT MARKET o SELL 1 SHARE AT 1.56 LIMIT V / 75

9 Quantità Esistono 2 modi per definire la quantità: L a Programmazione d i si stemi di trading SHARES che corrisponde ad un'unità dello strumento: "1 Share" puo' rappresentare 1 azione, 1 contratto futures, o un contratto Forex. SHARES possono essere utilizzati indifferentemente con SHARE, CONTRACTS, LOT o LOTS su tutti i tipi di strumenti. Nel caso del Forex, la quantità comprata sarà moltiplicata per la grandezza di un lotto. Se la quantità non é indicata, vengono usati i seguenti valori predefiniti: 1 unità per una posizione di entrata (Es : BUY AT MARKET, acquista una quantità di "1" a prezzo di mercato) L'intera quantità di una posizione per un'uscita (Es : SELL AT MARKET vende l'intera posizione lunga) CASH corrisponde all'importo effettivo (come o $) e quest'istruzione puo' essere usata unicamente per acquistare o vendere azioni. La quantità dell'ordine sarà calcolata durante la chiusura della barra e arrotondata per default all'unità inferiore. Le spese di intermediazione non sono prese in considerazione nel calcolo della quantità corrispondente all'importo da comprare o vendere. Esempio: BUY 1000 CASH AT MARKET E' possibile utilizzare l'istruzione ROUNDEDUP per arrotondare questa quantità all'unità superiore. Esempio: BUY 1000 CASH ROUNDEDUP AT MARKET Tipo Sono a vostra disposizione tre modi di esecuzione d'ordini: AT MARKET: L ordine sarà passato al prezzo di mercato all'apertura della barra successiva. Esempio: BUY 1 SHARE AT MARKET AT <price> LIMIT: Un ordine limite sarà posizionato al prezzo indicato AT <price> STOP: Un ordine stop sarà posizionato al prezzo indicato Esempio: BUY 1 SHARE AT 10.5 LIMIT Gli ordini limite e stop con livelli specifici sono validi per la durata di una barra a partire dall'apertura della barra successiva. Sono quindi annullati se non eseguiti. Questi ordini sono diversi dagli ordini protezione stop e target (v. sezione successiva) che sono legati ad una posizione aperta e valida fino alla chiusura di questa posizione. Alcuni ordini possono essere trattati come ordini a mercato nelle seguenti condizioni: Nel caso di un ordine d'acquisto (BUY), se il prezzo del limite é superiore al prezzo di mercato, l'ordine sarà trattato come un ordine a mercato. Nel caso di un ordine d'acquisto (BUY), se il prezzo dello STOP é inferiore al prezzo di mercato, l'ordine sarà trattato come un ordine a mercato. Nel caso di un ordine di vendita allo scoperto (SELLSHORT), se il prezzo del LIMITE é inferiore al prezzo di mercato, l'ordine sarà trattato come un ordine a mercato. Nel caso di un ordine di vendita allo scoperto (SELLSHORT), se il prezzo dello STOP é superiore al prezzo di mercato, l'ordine sarà trattato come un ordine a mercato. V / 75

10 Esempio: L a Programmazione d i si stemi di trading Se RSI é in zona d'ipervendita (RSI < 30) e il prezzo é sotto la banda di Bollinger inferiore, allora acquistiamo un'azione al prezzo di mercato. Se RSI é in zona d'iperacquisto (RSI > 70) e il prezzo é superiore alla banda di Bollinger, allora vendiamo. MyRSI = RSI[14](Close) MyBollingerDown = BollingerDown[25](Close) MyBollingerUp = BollingerUp[25](Close) IF MyRSI < 30 AND Close < MyBollingerDown THEN BUY 1 SHARE AT MARKET IF MyRSI > 70 AND Close > MyBollingerUp THEN SELL AT MARKET Puoi impostare la durata della validità degli ordini limite e stop. Il seguente esempio mostra come sia possibile creare un ordine limite con una validità impostata su un numero specifico di barre usando le variabili. Il codice piazza un ordine di acquisto limite al prezzo di chiusura della barra sulla quale avviene un incrocio di una media mobile. L'ordine limite resta valido per 10 barre dopo l'incrocio. Se non viene eseguito durante questo periodo, sarà annulato. Esempio: // Definizione della durata di validità dell'ordine ONCE NbBarLimit = 10 MM20 = Average[20](close) MM50 = Average[50](close) // Se la MM20 incrocia al rialzo la MM50, definiamo 2 variabili "MyLimitBuy" e "MyIndex" che contengono il prezzo di chiusura attuale e l'indice della barra dell'incrocio. IF MM20 CROSSES OVER MM50 THEN MyLimitBuy = close MyIndex = Barindex IF BarIndex >= MyIndex + NbBarLimit THEN MyLimitBuy = 0 // Piazza un ordine al prezzo corrispondente di MyLimitBuy valido fino a che questa variabile é superiore a 0 e che non siamo in posizione long // Richiamo : MyLimitBuy é superiore a 0 durante le 10 barre che seguono. IF MyLimitBuy > 0 AND NOT LongOnMarket THEN BUY 1 SHARES AT MyLimitBuy LIMIT Se l'ordine non é eseguito, é possibile sostituire l'ordine di acquisto limite scaduto con un ordine di acquisto a mercato. Questo sarà possibile aggiungendo il seguente codice al precedente: IF MyIndex + NbBarLimit AND MyLimitBuy > 0 AND NOT LongOnMarket THEN BUY 1 SHARES AT MARKET V / 75

11 L a Programmazione d i si stemi di trading Gli Stop e Target ProBuilder vi permette ugualmente di definire dei target e stop di protezione. La sintassi da utilizzare é la seguente: SET STOP <tipo> <valore> o SET TARGET <tipo> <valore> Esempio: SET STOP %LOSS 2 // Impostate uno stop loss del 2% Ogni istruzione é descritta nei paragrafi seguenti. Attenzione a ben utilizzare le istruzioni STOP: AT <prezzo> STOP, serve per entrare in una posizione. Quest'ordine é valido per una barra. SET STOP LOSS <prezzo>, é uno stop di protezione usato per uscire dalla posizione. Quest'ordine é valido fino alla chiusura della posizione. Stop di protezione Gli stop di protezione permettono di limitare le perdite di una posizione. Possono essere definiti in termini relativi o assoluti: SET STOP LOSS x: La posizione sarà chiusa non appena la perdita sarà a x unità del prezzo di entrata in posizione. SET STOP ploss x: La posizione sarà chiusa non appena la perdita sarà a x punti del prezzo di entrata in posizione. SET STOP %LOSS x: La posizione sarà chiusa non appena la perdita raggiungerà x%, spese di intermediazione non incluse. SET STOP $LOSS x: La posizione sarà chiusa non appena la perdita raggiungerà x,$ (nella valuta dello strumento), spese di intermediazione non incluse. La quantità e direzione (uscire dalla posizione lunga o corta) dell'ordine stop di protezione sono automaticamente adattate al tipo di posizione aperta. Gli stop di protezione sono collegati ad una posizione. Se non c'é una posizione aperta, gli stop loss non saranno attivati. Per disattivare uno Stop loss nel codice, bisogna utilizzare la seguente istruzione: SET STOP LOSS 0, SET STOP ploss 0, SET STOP %LOSS 0, SET STOP $LOSS 0 SET target profit Quest'istruzione permette di uscire dalla posizione quando i guadagni raggiungono un certo valore. SET TARGET PROFIT x: La posizione sarà chiusa non appena il guadagno sarà a x unità del prezzo di entrata in posizione. SET TARGET pprofit x: La posizione sarà chiusa non appena il guadagno sarà a x punti del prezzo di entrata in posizione. SET TARGET %PROFIT x: La posizione sarà chiusa non appena il guadagno raggiungerà x%, spese di intermediazione non incluse. SET TARGET $PROFIT x: La posizione sarà chiusa non appena il guadagno raggiungerà x,$ (valuta dello strumento) La quantità e la direzione del profit target sono automaticamente adattate al tipo di posizione aperta in corso. Tutti i profit target sono collegati alla posizione. Se non c'é una posizione aperta, l'ordine profit target non é attivo. Per disattivare un profit target nel codice, puo' essere usata la seguente istruzione: SET TARGET PROFIT 0, SET TARGET pprofit 0, SET TARGET %PROFIT 0, SET TARGET $PROFIT 0 V / 75

12 L a Programmazione d i si stemi di trading Trailing Stop Un trailing stop é un ordine stop il cui prezzo cambia in funzione dell'evoluzione del prezzo. Per delle posizioni lunghe, quando il prezzo aumenta, il livello di trailing stop aumenta, ma se il prezzo diminuisce, il livello del trailing stop rimane costante. I trailing stop su posizioni corte funzionano in modo contrario: quando il prezzo diminuisce, il livello di trailing stop diminuisce, ma se il prezzo aumenta, il livello del trailing stop rimane costante. Sulla base dello stesso principio che regola gli stop di protezione, i trailing stop possono essere definiti in termini relativi o assoluti: SET STOP TRAILING y: Impostate un trailing stop di y unità dalla posizione del prezzo di entrata SET STOP ptrailing y: Impostate un trailing stop di y punti dalla posizione del prezzo di entrata SET STOP %TRAILING y: Impostate un trailing stop di y% dalla posizione del prezzo di entrata, commissioni non incluse SET STOP $TRAILING y: Impostate un trailing stop di y,$ (valuta dello strumento) dalla posizione del prezzo di entrata, commissioni non incluse La quantità e la direzione (uscire dalla posizione lunga o corta) dell'ordine trailing stop sono automaticamente adattate al tipo di posizione aperta in corso. Tutti i trailing stop sono collegati ad una posizione. Se non c'é una posizione aperta, il trailing stop non é attivo. Se la quantità della posizione cambia, il livello di stop viene azzerata. Per disattivare un trailing stop nel codice, puo' essere usata la seguente istruzione: SET STOP TRAILING 0, SET STOP ptrailing 0, SET STOP %TRAILING 0, SET STOP $TRAILING 0 Esempio: Viene presa una posizione lunga sul DAX a 6000 punti e posizionate un trailing stop a 50 punti: SET STOP ptrailing 50 Lo stop é inizialmente posizionato a Se il prezzo aumenta fino a 6010 poi scende fino a 5980, lo stop aumenterà di 10 punti fino a 5960 e resterà bloccato fino a che il prezzo supererà Sarà quindi attivato se il prezzo raggiunge Uso di "Set Target" e "Set Stop" con istruzioni condizionali "IF" E' possibile cambiare il tipo di target o stop impostati nel vostro codice sulla base di condizioni personalizzate usando le istruzioni condizionali if. Esempio: REM Usate uno stop loss di 10% se il guadagno del trade precedente era almeno 10%, altrimenti usate uno stop loss di 5%. IF PositionPerf(1) > 0.1 THEN ELSE SET STOP %LOSS 10 SET STOP %LOSS 5 V / 75

13 L a Programmazione d i si stemi di trading Stop multipli e livelli di target In circostanze normali, puo' essere attivata soltanto un'istruzione alla volta "Set Stop" e una "Set Target". Se ci sono istruzioni successive "Set Stop" o "Set Target" in un codice, l'ultima istruzione sostituirà l'istruzione precedente. Esempio: SET STOP %LOSS 10 // Impostate uno stop loss di 10% SET TARGET PROFIT 50 // Impostate un profit target di 50 unità SET TARGET %PROFIT 5 // Rimuovete il target precedente di 50 unità e sostituitelo con un profit target di 5% SET STOP %TRAILING 2 // Rimuovete il precedente stop loss di 10% e sostituitelo con un trailing stop di 2% Tuttavia, é ugualmente possibile combinare stop e trailing stop fissati o stop loss e trailing stop con una singola istruzione mostrata qui sotto: SET STOP <Mode> <value> <TrailingType> <value> fissato trailing Mode: Loss, ploss, %LOSS, $LOSS TrailingType: TRAILING, p TRAILING, %TRAILING, $TRAILING Quest'istruzione si presenterà quindi in questo modo: SET STOP [LOSS/pLOSS/$LOSS/%LOSS] <value> [TRAILING/pTRAILING/$TRAILING/%TRAILING] <value> Esempi di utilizzo: SET STOP LOSS x TRAILING y: Uno stop loss é piazzato a x unità dal prezzo medio della posizione e diventa un trailing stop di y unità non appena il prezzo corrente varia favorevolmente d'almeno (y-x). SET STOP LOSS x ptrailing y: Uno stop loss é piazzato a x unità dal prezzo medio della posizione e diventa un trailing stop di y unità non appena il prezzo corrente varia favorevolmente d'almeno (y-x). SET STOP LOSS x $TRAILING y: Uno stop loss é piazzato a x unità dal prezzo medio della posizione e diventa un trailing stop di y $ o (valuta dello strumento) se il livello di trailing stop diventa più vicino al prezzo corrente che al livello di stop loss. SET STOP LOSS x %TRAILING y: Uno stop loss é piazzato a x unità dal prezzo medio della posizione e diventa un trailing stop di y% se il livello di trailing stop diventa più vicino al prezzo corrente che al livello di stop loss iniziale. V / 75

14 L a Programmazione d i si stemi di trading SET STOP ploss x TRAILING y: Uno stop loss é piazzato a x punti dal prezzo medio della protezione e diventa un trailing stop di y unità se il livello di trailing stop diventa più vicino al prezzo corrente che al livello di stop loss iniziale. SET STOP ploss x ptrailing y: Uno stop loss é piazzato a x punti dal prezzo medio della protezione e diventa un trailing stop di y unità se il livello di trailing stop diventa più vicino al prezzo corrente che al livello di stop loss iniziale. SET STOP ploss x $TRAILING y: Uno stop loss é piazzato a x punti dal prezzo medio della posizione e diventa un trailing stop di y unità non appena il prezzo corrente varia favorevolmente d'almeno (y-x). SET STOP ploss x %TRAILING y: Uno stop loss é piazzato a x punti dal prezzo medio della posizione e diventa un trailing stop di y% se il livello di trailing stop diventa più vicino al prezzo corrente che al livello di stop loss iniziale. SET STOP $LOSS x TRAILING y: Uno stop loss é piazzato a x $ o (valuta dello strumento) dal prezzo medio della protezione e diventa un trailing stop di y unità se il livello di trailing stop diventa più vicino al prezzo corrente che al livello di stop loss iniziale. SET STOP $LOSS x ptrailing y: Uno stop loss é piazzato a x $ o (valuta dello strumento) dal prezzo medio della protezione e diventa un trailing stop di y unità se il livello di trailing stop diventa più vicino al prezzo corrente che al livello di stop loss iniziale. SET STOP $LOSS x $TRAILING y: Uno stop loss é piazzato a x $ o (valuta dello strumento) dal prezzo medio della posizione e diventa un trailing stop di y unità non appena il prezzo corrente varia favorevolmente d'almeno (y-x). SET STOP $LOSS x %TRAILING y: Uno stop loss é piazzato a x $ o (valuta dello strumento) dal prezzo medio della posizione e diventa un trailing stop di y% se il livello di trailing stop diventa più vicino al prezzo corrente che al livello di stop loss iniziale. SET STOP %LOSS x TRAILING y: Uno stop loss di x% é piazzato e diventa un trailing stop di y unità se il livello di trailing stop diventa più vicino al prezzo corrente che al livello di stop loss. SET STOP %LOSS x ptrailing y: Uno stop loss di x% é piazzato e diventa un trailing stop di y punti se il livello di trailing stop diventa più vicino al prezzo corrente che al livello di stop loss. SET STOP %LOSS x $TRAILING y: Uno stop loss di x% é piazzato e diventa un trailing stop di y $ o (valuta dello strumento) se il livello di trailing stop diventa più vicino al prezzo corrente che al livello di stop loss. SET STOP %LOSS x %TRAILING y: Uno stop loss di x% é piazzato e diventa un trailing stop di y% se il livello di trailing stop diventa più vicino al prezzo corrente che al livello di stop loss. V / 75

15 L a Programmazione d i si stemi di trading Esempio: SET STOP LOSS x TRAILING y: Uno stop viene piazzato a x unità del prezzo di entrata della posizione e diventa un trailing stop di y unità se il livello del trailing stop diventa più vicino al prezzo corrente che al livello di stop loss. Per esempio, se entrate una posizione lunga sul future DAX a 6500, il seguente codice piazza uno stop loss a 20 unità del prezzo di entrata della posizione che diventa un trailing stop di 50 unità se il prezzo supera SET STOP LOSS 20 TRAILING 50 L'immagine seguente illustra l'esempio: Lo stop iniziale é piazzato ad un livello fisso di 20 unità sotto il prezzo di apertura della posizione (6480). Solo se il prezzo raggiunge 6530 (= (50-20) ), lo stop diventa un trailing stop di 50 unità. Se il prezzo aumenta a 6535, come mostrato dall'immagine qui sopra, il trailing stop prenderà il valore di V / 75

16 L a Programmazione d i si stemi di trading Informazioni sull'utilizzo dei punti o unità per la distanza di stop e limiti Il valore di un punto può variare a seconda del tipo di strumento che seguiamo, mentre il valore dell'unità (variazione di un'unità sul grafico) rimane invariato. A seconda del codice e degli strumenti a cui viene applicato è possibile scegliere di misurare la distanza in punti o in unità. Esempio: Sull'EuroDollaro (EUR/USD), 1 punto= unità sul grafico Sui futures indici (DAX, FCE), 1 punto=1 unità sul grafico Sui futures sui tassi di interesse europei,1 punto=0.01 unità sul grafico Interrompere un sistema di trading con QUIT L'istruzione «QUIT» permette di interrompere un sistema di trading. Lo stop si verifica dopo la barra corrente. Gli ordini in attesa sono poi cancellati e tutte le posizioni aperte sono chiuse. Questo vi permette di interrompere un sistema di trading nel caso di perdite alte o dopo una certa data per esempio. Esempio: IF Date > THEN // Interrompi la strategia dopo il 1 Gennaio 2013 QUIT Monitoraggio delle posizioni Variabili di stato delle posizioni Le 3 variabili che permettono di verificare lo stato dei vostri sistemi di trading sono le seguenti: ONMARKET: vale 1 se avete delle posizioni aperte, altrimenti 0 LONGONMARKET: vale 1 se avete delle posizioni lunghe aperte, altrimenti 0 SHORTONMARKET: vale 1 se avete delle posizioni corte aperte, altrimenti 0 Possono essere utilizzati con delle parentesi quadre. Per esempio, ONMARKET[1] vale 1 se avete una posizione aperta alla chiusura della barra precedente, altrimenti 0. Queste variabili sono abitualmente introdotte con le istruzioni IF prima di un'entrata in posizione: Esempio: REM Definite il MACD Indicator1 = MACD[12,26,9](Close) REM Osservate gli incroci dell'istogramma MACD c1 = (Indicator1 CROSSES OVER 0) REM Acquisto : Se non si é in posizione lunga e se MACD >0, comprate 3 lotti IF NOT LONGONMARKET AND c1 THEN BUY 3 SHARES AT MARKET V / 75

17 L a Programmazione d i si stemi di trading Grandezza delle variabili della posizione Queste 3 variabili permettono di conoscere la quantità di una posizione aperta: COUNTOFPOSITION: grandezza della posizione (in lotti, titoli o contratti...). Positivo se posizione lunga aperta, negativo se posizione corta aperta. COUNTOFLONGSHARES: grandezza di una posizione lunga (in lotti, titoli o contratti...) se c'é una posizione lunga aperta, altrimenti 0. COUNTOFSHORTSHARES: grandezza di una posizione corta (in lotti, titoli o contratti...) se c'é posizione corta aperta, altrimenti 0. Queste variabili sono spesso introdotte con le istruzioni IF prima di un'entrata in posizione. Attenzione a ben utilizzare queste variabili di stato : Il codice viene valutato alla fine di ogni barra, e gli ordini sono piazzati all'apertura della barra successiva.per esempio, nel successivo blocco di codice, la variabile "long" non sarà uguale a 1 alla chiusura della prima candela, ma solamente alla chiusura della seconda candela poiché il primo ordine d'acquisto é passato all'apertura della seconda candela. BUY 1 SHARE AT MARKET IF NOT LONGONMARKET THEN long = 1 TradeIndex Il comando TRADEINDEX(n) consente di accedere alla barra dell'ennesimo ordine precedente eseguito: TRADEINDEX(n-simo ordine precedente) Nota bene: E' possibile usare TradeIndex senza un numero tra le parentesi. In questo caso, il programma considererà la barra dell'ultimo ordine eseguito: TradeIndex=TradeIndex(1). TradeIndex é spesso usato unitamente a Barindex. Esempio: REM: Chiudete una posizione lunga se é stata aperta da almeno 3 barre: IF LONGONMARKET AND (BarIndex - TradeIndex) >= 3 THEN SELL AT MARKET TradePrice Il comando TRADEPRICE(n) permette di trovare il prezzo della transazione precedentemente eseguita. La sua sintassi é la seguente: TRADEPRICE(n-simo ordine precedente) Se n non é specificato, il prezzo dell'ultimo ordine eseguito é: TradePrice=TradePrice(1) Esempio: REM: Chiudete una posizione lunga se il prezzo é superiore al prezzo dell'ordine precedente maggiorato di 2% IF LONGONMARKET AND CLOSE > 1.02 * TRADEPRICE THEN SELL AT MARKET V / 75

18 L a Programmazione d i si stemi di trading PositionPerf Il comando POSITIONPERF(n) restituisce: La performance in % dell'ennesima ultima posizione chiusa, se n>0 (commissioni non incluse) La performance in % della posizione aperta in corso, se n=0 (commissioni non incluse) La sintassi é la seguente: POSITIONPERF(n-sima posizione precedente) Se n non é indicato, si suppone n=0: PositionPerf=PositionPerf(0) Esempio: REM Acquista se il trade precedente ha fatto almeno 20% di guadagni IF NOTONMARKET AND PositionPerf(1) > 0.2 THEN BUY 1000 CASH AT MARKET PositionPrice Il comando PositionPrice permette di conoscere il prezzo medio di acquisto della posizione aperta in corso. POSITIONPRICE Viene calcolato come la somma di tutti i prezzi di entrata ponderati dalla quantità di ogni ordine. Solo aggiungendo ad una posizione, cambierà il valore del PositionPrice. Quest'istruzione puo' essere utilizzata con delle parentesi quadre: POSITIONPRICE[1] restituisce il valore della PositionPrice alla chiusura della barra precedente. Esempio: Acquistate un'azione a 5, poi rinforzate la vostra posizione riacquistando un'azione a 10, poi un'altra a 15. PositionPrice sarebbe quindi uguale a: ( ) / 3 = 10 Se poi vendete un'azione al prezzo di 20. PositionPrice sarà ancora uguale à 10 (resta invariato). StrategyProfit Quest'istruzione restituisce i guadagni o le perdite (assolute, nella valuta dello strumento e commissioni escluse) realizzate dall'inizio del sistema di trading. Viene tipicamente utilizzata insieme all'istruzione QUIT per interrompere un sistema di trading che ha perso molto. STRATEGYPROFIT Quest'istruzione puo' essere utilizzata con delle parentesi quadre: StrategyProfit[1] dà il profitto alla chiusura della barra precedente. Esempio: IF STRATEGYPROFIT < -500 THEN QUIT Nota bene: Ricordate che i sistemi di trading sono valutati alla chiusura della barra. Nell'esempio qui sopra, le perdite possono essere superiori a 500 nel caso di una grossa perdita su una signola candela o nel caso di un gap. Di conseguenza, un utente che vuole interrompere un sistema di trading dopo una perdita di 500, imposterà prima di tutto uno STOP LOSS per limitare le perdite, poi userà il blocco del codice riportato qui sopra per interrompere il sistema. V / 75

19 L a Programmazione d i si stemi di trading Avvertimento: Gli esempi presentati in questo manuale sono a scopo pedagogico. Tutte le informazioni presenti sono a carattere generale e non rappresentano in nessun caso informazioni o consulenze personalizzate o incitazioni a comprare o vendere strumenti finanziari. Le performances passate non rappresentano previsioni per il futuro. Ogni sistema di trading può esporre a un rischio di perdite superiori all'investimento iniziale. Definizione dei parametri di esecuzione di sistemi di trading Si possono definire dei parametri addizionali con l'aiuto dell'istruzione DEFPARAM. Cumulo di ordini La variabile CumulateOrders vi permette di autorizzare o proibire ordini cumulati per entrare a mercato o aggiungere ad una posizione. Questo parametro é impostato su True per default per i codici creati dalla programmazione il che significa che un sistema di trading puo' aggiungerlo ad una posizione esistente su ogni barra dove le condizioni per entrare questa posizione sono vere. E' anche possibile avere limiti multipli o ordini stop per entrare a mercato attivo allo stesso tempo in questo caso. Per impedire ad un sistema di trading di aumentare la grandezza di una posizione già aperta, la seguente istruzione deve essere impostata all'inizio del codice: DEFPARAM CumulateOrders = False Le istruzioni DefParam rimangono valide per l'intera esecuzione del sistema di trading. Non é possibile cambiare i parametri del sistema di trading per gli ordini cumulati o no durante l'esecuzione del sistema di trading. Esempi: // Questo codice comprerà 1 titolo ad ogni barra, fino ad un massimo di 3. DEFPARAM CumulateOrders = True If CountOfPosition < 3 THEN Endif Buy 1 shares at market // Questo codice comprerà 1 titolo al prezzo di 2 e un titolo addizionale al prezzo di 3 DEFPARAM CumulateOrders = True If CountOfPosition < 2 THEN Endif Buy 1 shares at 2 Limit Buy 1 shares at 3 Limit // Questo codice comprerà 5 titoli solo una volta DEFPARAM CumulateOrders = False Buy 5 shares at market E' possibile avere diversi ordini per uscire sul mercato nella stessa direzione anche quando il parametro CumulateOrders é impostato su false. Esempio: // Questo codice comprerà 5 titoli. Fino a 3 titoli saranno venduti se il prezzo incrocia sotto i 40 periodi di media mobile. Tutti i titoli saranno venduti nel caso di una perdita del 10%. DEFPARAM CumulateOrders = False Buy 5 shares at market If close CROSSES UNDER Average[40] THEN Endif SELL 3 SHARES AT MARKET Set stop %Trailing 10 V / 75

20 L a Programmazione d i si stemi di trading Nota sui livelli di stop e target quando CumulateOrders é attiva: Se usate le istruzioni per impostare uno stop loss, trailing stop o profit target con ordini cumulati attivati, il livello viene calcolato in base al prezzo medio di entrata della vostra posizione e viene ricalcolato ogni volta che la quantità della posizione viene modificata. Esempio: Se comprate 1 azione a $ e impostate lo stop loss a 10% e il profit target a 150%, il livello iniziale sarebbe : lo stop a 9.00 $ ed il target a $. Se comprate una seconda azione al prezzo di 20 $, il prezzo medio di entrata sarebbe di 15 $ e di conseguenza i nuovi livelli sarebbero : uno stop a $ e un target a $ (per la posizione intera). Nota sui codici creati con la modalità di creazione assistita: CumulateOrders é impostato su false per default per i sistemi di trading creati con la modalità di creazione assistita (l'istruzione DefParam CumulateOrders = False sarà presente all'inizio di questi codici). PreLoadBars L'istruzione "DefParam Preloadbars" vi permette di configurare la quantità massima di barre che vengono precaricate prima dell'inizio del sistema di trading per il calcolo degli indicatori usati nel sistema precedente all'avvio del sistema (indicatori personalizzati o predefiniti). Per default, questo parametro é uguale a 200. Puo' essere inferiore a 0 o superiore a Se volete disattivare i dati precaricati, impostate PreLoadBars = 0. Il valore selezionato é un massimo perché la quantità delle barre che possono essere precaricate dipende dai dati disponibili per un dato strumento ed un'unità di tempo. Esempio: DEFPARAM PreLoadBars = 300 a = (close + open) / 2 If price CROSSES OVER Average[250](a) THEN BUY 1 SHARE AT MARKET Endif Se PreLoadBars é impostato a 300, significa che una media mobile di 250 barre sarebbe definita come la prima barra dopo che un sistema di trading é iniziato. Non sarebbe cosi' se fossero precaricate solo 200 barre. Notate che il valore di 300 é un massimo: se sono disponibili meno di 300 barre prima dell'inizio del sistema di trading, solo il numero disponibile di barre sarà precaricato. Nell'esempio dove 300 barre vengono precaricate, il BarIndex della prima barra dopo l'inizio del sistema di trading é uguale a 300. Dall'altro lato, se sono precaricate 0 barre, il BarIndex della prima barra dopo l'inizio del sistema di trading sarebbe uguale a 0. V / 75

21 L a Programmazione d i si stemi di trading FlatBefore e FlatAfter DEFPARAM FlatBefore = HHMMSS DEFPARAM FlatAfter = HHMMSS HHMMSS é l'orario dove HH indica l'ora, MM indica i minuti e SS indica i secondi. Queste istruzioni vi permettono di cancellare tutti gli ordini in attesa, chiudere tutte le posizioni e impedire di piazzare ordini supplementari prima di una cert'ora del giorno nel caso di FlatAfter. Il parametro FlatBefore deve sempre essere posteriore all'orario di apertura del mercato (personalizzato o no), e FlatAfter deve essere anteriore alla chiusura standard del mercato (personalizzato o no), altrimenti non avrebbe alcun effetto. Se l'orario di chiusura non é un multiplo dell'orario principale del sistema di trading (succede a metà della candela), l'istruzione DEFPARAM FlatAfter avrà effetto alla chiusura della candela e l'istruzione DEFPARAM FlatBefore sarà applicata fino alla chiusura della candela precedente. Gli ordini sono limitati durante questo periodo, il che significa che nessun ordine sarà piazzato e tutti gli ordini non saranno piazzati all'apertura del prossimo periodo quando il sistema di trading é autorizzato a piazzare ordini. Di conseguenza il tipo di variabili "OnMarket" sarà sempre falso durante questo periodo. Esempio: DEFPARAM FlatBefore = // Cancella tutti gli ordini in attesa, chiude tutte le posizioni e evita di piazzare ordini supplementari con il sistema di trading prima delle 9:30:00 orario della zona del mercato. DEFPARAM FlatAfter = // Cancella tutti gli ordini in attesa, chiude tutte le posizioni e evita di piazzare ordini supplementari con il sistema di trading dopo le 16:00:00 orario della zona del mercato. NoCashUpdate (Backtest solamente) DEFPARAM NoCashUpdate = True Se quest'opzione é attivata, il capitale disponibile non é aggiornato con i guadagni, le perdite e le commissioni. Per default, NoCashUpdate = False. Esempio: Capitale iniziale , con NoCashUpdate = True. L'investimento massimo sarà limitato a qualunque siano i guadagni e le perdite realizzate per l'intera durata del Backtest. Nota bene: I parametri definiti con l'aiuto dell'istruzione DEFPARAM devono essere definiti all'inizio del codice (dopo i commenti) MinOrder and MaxOrder (backtest solamente) DEFPARAM MinOrder = n DEFPARAM MaxOrder = p Questa opzione permette di bloccare tutti gli ordini la cui quantità (espressa in lotti, contratti o azioni) è inferiore a n o superiore a p. Esempio: DEFPARAM MinOrder = 100 Buy 1000 cash at market Se il capitale iniziale è superiore a 10, la quantità dell'ordine sarà inferiore a 100 quindi l'ordine verrà rifiutato. V / 75

22 L a Programmazione d i si stemi di trading Richiamo d'indicatori Indicatori ProRealTime Tutte le funzioni che includono gli indicatori ProRealTime disponibili per programmare i propri indicatori sono ugualmente accessibili per programmare sistemi di trading (v. glossario alla fine di questo manuale per una lista completa). Vi consigliamo di riferirvi al manuale ProBuilder per maggiori informazioni su queste funzioni. La quantità di dati storici necessaria per il calcolo di un indicatore dipende dal tipo di indicatore. Per esempio, per calcolare una media mobile esponenziale su N periodi (ExponentialAverage[N]), si considera generalmente che 10*N barre sono necessarie per fornire un risultato preciso. Se la data di inizio del backtest é molto vicina alla prima data del grafico, viene fornito dello storico supplementare al backtest in modo che gli indicatori diano dei risultati dalla prima barra. Indicatori personalizzati E' possibile richiamare gli indicatori ProBuilder che avete programmato usando l'istruzione CALL in un sistema di trading. Esempio: a,b = CALL "HistoMACD[5,6]" // a e b sono gli outputs della funzione. 5 e 6 sono gli inputs. Per un buon utilizzo di CALL, vi consigliamo di leggere attentamente la sezione consacrata all'ottimizzazione del vostro programma. Suggerimenti per la programmazione Avvertimento: Gli esempi presentati in questo manuale sono a scopo pedagogico. Tutte le informazioni presenti sono a carattere generale e non rappresentano in nessun caso informazioni o consulenze personalizzate o incitazioni a comprare o vendere strumenti finanziari. Le performances passate non rappresentano previsioni per il futuro. Ogni sistema di trading può esporre a un rischio di perdite superiori all'investimento iniziale. Il tempo di calcolo di un sistema di trading dipende fortemente dalla complessità degli indicatori utilizzati e dal modo in cui sono richiamati. Il seguente paragrafo propone quindi alcuni consigli semplici per ottimizzare il vostro codice. Ridurre il numero di richiami agli indicatori ProRealTime Se utilizzate più volte lo stesso indicatore in un programma, conservate l'indicatore in una variabile intermediaria (avg40 nell'esempio qui sotto) piuttosto che richiamare l'indicatore. Questo renderà l'esecuzione più veloce. CODICE NON OTTIMALE IF NOT LONGONMARKET AND close > Average[40] THEN BUY 1 SHARE AT MARKET CODICE OTTIMALE avg40 = Average[40] IF NOT LONGONMARKET AND close > avg40 THEN BUY 1 SHARE AT MARKET IF NOT SHORTONMARKET AND close < Average[40] THEN SELLSHORT 1 SHARE AT MARKET IF NOT SHORTONMARKET AND close < avg40 THEN SELLSHORT 1 SHARE AT MARKET V / 75

23 L a Programmazione d i si stemi di trading Questo é ugualmente valido quando volete utilizzare lo stesso indicatore più volte ma con un diverso offset. CODICE NON OTTIMALE a = ExponentialAverage[40](close) b = ExponentialAverage[40](close[1]) c = ExponentialAverage[40](close) IF a > b THEN BUY 1 SHARE AT MARKET IF a < c[1] THEN SELLSHORT 1 SHARE AT MARKET CODICE OTTIMALE a = ExponentialAverage[40](close) IF a > a[1] THEN BUY 1 SHARE AT MARKET IF a < a[1] THEN SELLSHORT 1 SHARE AT MARKET Richiami d'indicatori personalizzati Il richiamo d'indicatori personalizzati tramite l'istruzione CALL é più costoso in tempi di calcolo che il richiamo d'indicatori ProRealTime. Per gli indicatori ProRealTime, sappiamo in anticipo quali calcoli sono necessari e possiamo controllare come vengono fatti. Questo ci permette di aumentare la velocità di calcolo che non é possibile con gli indicatori personalizzati la cui programmazione é lasciata alla libertà dell'utente. Per migliorare la velocità di esecuzione di un sistema di trading con l'istruzione CALL, é quindi importante utilizzare l'istruzione CALL nel modo più efficace possibile nel programma. Limitare il numero di richiami identici: Come per gli indicatori ProRealTime, limitate il numero delle volte in cui l'indicatore é richiamato nel programma. CODICE NON OTTIMALE myindic1 = CALL "My Function" CODICE OTTIMALE myindic = CALL "My Function" IF NOT LONGONMARKET AND close > myindic1 THEN BUY 1 SHARE AT MARKET IF NOT LONGONMARKET AND close > myindic THEN BUY 1 SHARE AT MARKET myindic2 = CALL "My Function" IF NOT SHORTONMARKET AND close < myindic2 THEN SELLSHORT 1 SHARE AT MARKET IF NOT SHORTONMARKET AND close < myindic THEN SELLSHORT 1 SHARE AT MARKET V / 75

24 L a Programmazione d i si stemi di trading Limitare il numero di richiami sovrapposti: Se desiderate utilizzare un indicatore personalizzato nel codice del vostro backtest, verificate che non abbia l'istruzione CALL nel suo codice. Richiamare un indicatore personalizzato che richiama a sua volta un altro indicatore personalizzato é molto costoso in termini di tempo di calcolo. Se possibile, duplicate sempre il codice dell'indicatore personalizzato che volete richiamare nel ProBacktest piuttosto che usare la funzione CALL in modo che i codici backtest utilizzini solo gli indicatori ProRealTime. CODICE NON OTTIMALE Codice del sistema di trading: myindic = CALL "MyDCLOSEMix LinearReg" IF NOT longonmarket AND close > myindic THEN BUY 1 SHARE AT MARKET IF NOT shortonmarket AND close < myindic THEN SELLSHORT 1 SHARE AT MARKET Code de "MyDCLOSEMix LinearReg": dayclosemix = CALL "MyDCLOSEMix" CODICE OTTIMALE Codice del sistema di trading: dayclosemix = (DClose(0) * DClose(1) * DClose(2) + 3 * DClose(3) * DClose(4) 0.5 * DClose(5) 1.5 * DClose(6)) / 10.5 myindic = LinearRegression[5](dayclosemix) IF NOT longonmarket AND close > myindic THEN BUY 1 SHARE AT MARKET IF NOT shortonmarket AND close < myindic THEN SELLSHORT 1 SHARE AT MARKET RETURN LinearRegression[5](dayclosemix) Code de "MyDCLOSEMix": mix = (DClose(0) * DClose(1) * DClose(2) + 3 * DClose(3) * DClose(4) 0.5 * DClose(5) 1.5 * DClose(6)) / 10.5 RETURN mix V / 75

25 L a Programmazione d i si stemi di trading Limitare il numero di condizioni sovrapposte: Per tutte le istruzioni condizionali (IF...THEN...), é sempre preferibile, in termini di tempo di calcolo, lavorare con una condizione che verifica n condizioni piuttosto che n istruzioni come mostrato qui sotto: CODICE NON OTTIMALE IF CLOSE >= THEN IF CLOSE <= THEN IF INTRADAYBARINDEX >= 5 THEN IF INTRADAYBARINDEX <= 20 THEN IF NOT SHORTONMARKET THEN BUY 1 SHARES AT MARKET CODICE OTTIMALE IF CLOSE >= AND CLOSE <= AND INTRADAYBARINDEX >= 5 AND INTRADAYBARINDEX <= 20 THEN IF NOT SHORTONMARKET THEN BUY 1 SHARES AT MARKET Utilizzo dei cicli FOR: L'utilizzo dei cicli FOR é talvolta indispensabile, ma é meglio evitare di utilizzarli quando si puo', poiché aumentano il tempo di calcolo. Ecco qualche esempio tipico dove l'impiego del ciclo non é necessario: // Se la condizione c1 é stata vera almeno una volta nel corso delle ultime n candele: IF HIGHEST[n](c1) = 1 THEN... // Se la condizione c1 é stata sempre vera nel corso delle ultime n candele: IF LOWEST[n](c1) = 0 THEN... // Numero di volte in cui la condizione c1 é stata verificata nel corso delle ultime n candele: num = SUMMATION[n](c1) // Numero di barre da quando c1 é stata vera: IF c1 THEN lastoccurence = barindex timesince = barindex - lastoccurence // Il max delle variabili (a,b,c,d,e,f,g): top = MAX(a, MAX(b, MAX(c, MAX(d, MAX(e, MAX(f, g) ) ) ) ) ) V / 75

26 ProBackt est Bac ktesting di sistem i di t rading ProBacktest Backtesting di sistemi di trading La linguetta "ProBacktest" della finestra di creazione di sistemi di trading permette di configurare i parametri del sistema: Capitale iniziale Parametri di intermediazione e Impegno sul Mercato Ottimizzazione variabili Periodo di esecuzione V / 75

27 ProBackt est Bac ktesting di sistem i di t rading Money Management Capitale iniziale Questa sezione permette di inserire il capitale messo a disposizione per il sistema di trading da tradare. L'investimento massimo autorizzato durante l'esecuzione della sistema ne dipende. Durante l'esecuzione del backtest, i guadagni, le perdite e le commissioni influenzano l'importo del capitale disponibile per il sistema di trading (eccetto se il parametro NoCashUpdate é attivo, v. paragrafo Reinvestire i guadagni per maggiori informazioni). Per i sistemi di trading automatici, il capitale disponibile per i vostri sistemi é il capitale del vostro portafoglio. Se un backtest non piazza ordini, pensate ad aumentare l'importo del capitale iniziale. Brokeraggio: commissioni e gestione del rischio È possibile personalizzare questi parametri perché riflettano i parametri e i costi del proprio broker. Qualsiasi tipo di commissione di brokeraggio può essere applicato a qualsiasi tipo di strumento. I tipi di commissioni di brokeraggio disponibili sono: Commissione per ordine: un importo fisso (nella valuta dello strumento) viene applicato ad ogni ordine eseguito. È inoltre possibile specificare un valore minimo e un valore massimo per ogni ordine. % transazione: una percentuale della transazione (nella valuta dello strumento) viene applicata ad ogni ordine eseguito. Commissione per lotto: un importo fisso (nella valuta dello strumento) viene applicato ad ogni lotto o contratto Margine: un deposito (importo fisso o %) è richiesto per ogni lotto. Determina il massimo effetto leva (=100/margine) Misura per lotto (solo Forex): é la quantità minima per ordine dello strumento. La quantità di ogni ordine inserito nelle istruzioni BUY/SELL é moltiplicata per la taglia del lotto. Spread (in pips): il valore aggiunto al prezzo medio che riflette lo spread bid-ask. La sezione di gestione del rischio permette di definire il parametro grandezza massima di una posizione : ogni ordine che oltrepassa il limite qui indicato viene rifiutato. La grandezza massima della posizione rappresenta il numero massimo di contratti per futures e forex e di contante o % di capitale per azioni. Le impostazioni della sezione di "Gestione del rischio" non prendono in considerazione le commissioni di brokeraggio. V / 75

28 ProBackt est Bac ktesting di sistem i di t rading Futures: Le commissioni di brokeraggio per i futures sono definite per contratto e per transazione. Il margine é l'importo in contanti necessario per comprare un contratto. Il valore di un punto viene calcolato automaticamente sula piattaforma per il future su cui impostiamo il sistema di trading in backtest. Di seguito la lista con i valori di un punto per i principali futures. NOME DEL FUTURE VALORE DI 1 PUNTO FCE CAC DAX 25 DJ Eurostoxx BUND 10 Euro FX 12,5$ Mini S&P $ Mini Nasdaq $ Mini Dow 5$ Forex: Lo spread, la taglia del lotto e il margine possono essere definiti e applicati ad ogni ordine. Esempio su EURUSD: Tagli del lotto: Spread: 2 pips Margine: 5% L'istruzione BUY 1 LOT AT MARKET sull'eurusd compra 1 lotto di con uno spread di 2 pips. (0.0002). Dato che l'effetto leva è a 20:1 (5% del margine), un deposito di 5000 è richiesto per piazzare l'ordine. Azioni: Le commissioni di brokeraggio sono normalmente un importo in o in % della transazione. È inoltre possibile definire un importo minimo o massimo di costi di commissione per ogni transazione. Esempio di impostazione per azioni: Commissione per ordine: $10 Margine: 20% Con queste impostazioni ogni ordine può usufruire di un effetto leva a 5:1. V / 75

29 ProBackt est Bac ktesting di sistem i di t rading Ottimizzazione delle variabili In questa sezione, potete scegliere di ottimizzare le variabili. Questa funzione permette di testare le diverse combinazioni di parametri in un backtest, per sapere quale dà il miglior risultato su un dato strumento e unità di tempo sul periodo di dati storici testati. Per saperne di più e vedere un esempio concreto, potete visionare il video "Come impostare la gestione del capitale e gli stop in ProBacktest". Il risultato dell'ottimizzazione é presente nel "Rapporto ottimizzazione". Vedrete le statistiche delle migliori combinazioni delle variabili testate e utilizzerete quest'informazione per determinare quale variabile desiderate utilizzare nel vostro sistema di trading. Ecco un esempio di programma con ottimizzazione di due medie mobili con periodi di n e m: AVGm = ExponentialAverage[m](Close) AVGn = ExponentialAverage[n](Close) IF AVGm CROSSES OVER AVGn THEN BUY 100 SHARES AT MARKET IF AVGm CROSSES UNDER AVGn THEN SELL 100 SHARES AT MARKET Le variabili n e m possono essere definite cliccando sul tasto "Aggiungi" nella sezione ottimizzazione. La seguente finestra si apre e vi consente di impostare l'ottimizzazione: "Nome utilizzato nel programma" rappresenta il nome attribuito alla variabile nel codice (n in questo caso). Attenzione a rispettare le maiuscole e minuscole. "Formula visibile nell'interfaccia" rappresenta il nome che si vuole attribuire alla variabile, in modo da renderla più facilmente riconoscibile (per esempio "Numero di Periodi" per n). "Valore Min" e "Valore Max" rappresentano i limiti delle variabili per il test d'ottimizzazione. "Passo" é l'intervallo delle variabili da testare nell'ottimizzazione. V / 75

30 ProBackt est Bac ktesting di sistem i di t rading Ecco un esempio di rapporto di ottimizzazione: Il rapporto di ottimizzazione indica 5 statistiche per ognuna delle combinazioni di variabili testate. Queste statistiche sono le seguenti: "Guadagno", indica il guadagno o perdita realizzata con il sistema di trading. Si traduce nella formula: Guadagno = Importo del capitale finale Importo del capitale iniziale Questa statistica permette di valutare il potenziale guadagno assoluto con il sistema di trading definito per il periodo storico testato e per ogni combinazione di variabili. Nota bene: i parametri di intermediazione definiti nella sezione "Parametri di intermediazione" sono presi in considerazione in questo calcolo. "%Guadagno", rappresenta il guadagno o perdita in %. Si traduce tramite la formula: %Guadagno = 100 x Profitto/ Importo del capitale iniziale Indica quindi la relativa performance del backtest configurato con le variabili corrispondenti. "N posizioni", indica il numero di posizioni aperte durante il backtest. "% Posizioni vincenti" indica la percentuale delle posizioni vincenti. Matematicamente, si definisce con: % posizioni vincenti = (100 x Numero di posizioni vincenti) / Numero di posizioni "Guad. medio per posizione" é il guadagno medio per posizione. Puo' essere utile per determinare il rendimento degli ordini piazzati. Si definisce con: Guad. medio per posizione = Guadagno / Numero di posizioni Nota bene: i risultati dei rapporti di ottimizzazione possono cambiare per un dato sistema di trading che dipende dal valore, unità di tempo o la quantità di dati storici usati. V / 75

31 ProBackt est Bac ktesting di sistem i di t rading Definizione del periodo di esecuzione del backtest Questi campi permettono di definire le date di inizio e di fine del backtest. Notate che la quantità di storico che puo' essere usata per il backtest é generalmente limitata alla quantità di storico disponibile sul grafico. Potete aumentare la quantità di dati storici caricati sul vostro grafico usando il menù di sinistra di ogni grafico. E' necessario caricare la quantità di storico che desiderate prima di avviare il vostro backtest. Nel caso di un backtest "Fino a ultima data", gli ordini appaiono sul grafico ad ogni scatto dei segnali. E' ugualmente possibile associare questi ordini a delle popup o a dei suoni selezionando "Suono allarmi" nel menù "Opzioni". Se é definita una data di fine, le posizioni ancora aperte a questa data saranno chiuse. Nota bene: Se il vostro backtest mette del tempo ad eseguirsi, potete ridurre il periodo di esecuzione : il tempo di calcolo per backtestare un sistema di trading é proporzionale alla lunghezza dello storico sul quale il sistema di trading é testato. Dopo l'esecuzione di un backtest, i risultati sono mostrati nel seguente modo: Curva dei guadagni e perdite che mostrano il guadagno e le perdite del sistema di trading Istogramma delle posizioni Rapporto dettagliato Per maggiori informazioni riguardo alla visualizzazione dei risultati dei backtest, controlla l'allegato A al termine di questo documento. Personalizzazione degli orari di trading per il backtest Attraverso il menù "Opzioni / Fuso orario & Orari di trading" è possibile impostare degli orari di trading personalizzati per un determinato mercato. Orari di trading personalizzati: Se impostiamo degli orari di trading ridotti per un determinato mercato, questo implica che saranno visibili sui grafici (e presi in configurazione nei ProBacktest) solo le quotazioni degli orari impostati. Nota bene: è possibile definire degli orari di trading ridotti solo in un determinato giorno. Ad esempio se un mercato è aperto 24 ore su 24 è possibile scegliere di visualizzare solo le quotazioni tra le 10:00 e le 14:00, non è invece possibile visualizzare le quotazioni tra le 21:00 di un giorno e le 09:00 del giorno successivo. Se un ordine è piazzato alla chiusura personalizzata dell'ultima candela del giorno di trading con orari di trading personalizzati, questo ordine verrà piazzato all'apertura personalizzata del successivo giorno di trading. Informazioni sui fusi orari personalizzati e quotazioni durante il week-end: Alcuni mercati aperti 24 ore su 24 permettono di "utilizzare quotazioni intraday per costruire candele giornaliere". Questa opzione non è presa in considerazione quando vengono eseguiti dei ProBacktest, che utilizzano sempre candele ufficiali giornaliere basate sul fuso orario di base (mercato locale). Alcuni mercati (come il Forex) includono quotazioni durante il week-end. Esiste un'opzione nel menù "Opzioni / Fuso orario & Orari di trading" per questi mercati che permette di mostrare o nascondere i dati del week-end nei grafici. Le quotazioni del week-end sono però sempre prese in considerazione per i ProBacktest. Per il mercato Forex le quotazioni della domenica sono incluse nella candela giornaliera del lunedì per i ProBacktest (non esiste una candela giornaliera per la domenica). V / 75

32 ProBackt est Bac ktesting di sistem i di t rading Informazioni sui fusi orari personalizzati: Il codice viene sempre eseguito nel fuso orario dell'utilizzatore. Questo significa che le istruzioni temporali (time, flatafter, flatbefore) prenderanno in considerazione questo fuso orario per il loro calcolo. Il fuso orario dell'utilizzatore è quello predefinito per il mercato dello strumento finanziario. È possibile personalizzare i fusi orari dal menù "Opzioni / Fuso orario & Orari di trading". Per default, il fuso orario dello strumento finanziario è quello predefinito sul suo computer. È possibile modificare il fuso orario di un mercato dal menù "Opzioni / Fuso orario & Orari di trading". Se viene apportata una modifica, il fuso orario personalizzato sarà preso in considerazione all'esecuzione successiva di un ProBacktest. Esempio: Per il titolo Vodafone (appartenente al mercato London Stock Exchange fuso orario UTC+1 ora estiva britannica), imposto i grafici sul fuso orario di Parigi (UTC+2 ora estiva dell'europa centrale): l'istruzione tempo passerrà a 13:00 (tempo della chiusura della candela 15 minuti cominciata alle 11:45 (ora estiva britannica, ovvero 12:00 ora estiva britannica modificato in 13:00 ora estiva dell'europa centrale). Le istruzioni temporali "intraday" coinvolte: "Time" and similar functions ("Hour", "Minute") "OpenTime" and similar functions ("OpenHour", "OpenMinute") "FlatAfter" and "FlatBefore" "IntradayBarIndex" (azzera all'apertura del mercato nel fuso orario selezionato) Le istruzioni temporali in unità di tempo giornaliero non sono coinvolte dalla modifica di fuso orario: "DOpen", "DHigh", "Dlow", "DClose" "Date" and similar functions ("Year", "Month", "Day") "DayOfWeek" e "Days" Queste istruzioni temporali sono invece sempre nel fuso orario del mercato locale. V / 75

33 ProBackt est Bac ktesting di sistem i di t rading Ragioni di interruzione di un ProBacktest Un ProBacktest puo' fermarsi in uno dei seguenti casi: Il backtest raggiunge il termine specificato nella finestra di programmazione. In questo caso, il termine del backtest viene mostrato solo da una linea verticale nera sul grafico. C'é un'istruzione "Quit" nel codice che é eseguito. In questo caso, il termine del backtest viene mostrato con la seguente icona: Il capitale disponibile non é più sufficiente a coprire le perdite ("stima" del capitale é negativa). In questo caso, il termine del backtest sarà mostrato da questa icona Un ordine é respinto per denaro insufficiente. Quest'ordine apparirà nella lista di ordini del rapporto dettagliato. In questo caso, il termine del backtest sarà mostrato con l'icona: Qui di seguito un esempio di backtest interrotto per insufficienza di capitale: V / 75

34 ProBackt est Bac ktesting di sistem i di t rading Visualizzazione dei valori delle variabili backtest (a partire da ProRealTime v10.2) La funzione GRAPH consente di visualizzare i valori delle variabili che utilizza nel suo programma backtest. Questa istruzione si utilizza nel modo seguente: GRAPH myvariable AS "my variable name" myvariable é il nome della variabile nel codice "my variable name" é l'etichetta della variabile che sarà visualizzata sul grafico E' ugualmente possibile definire un colore di uscita grazie al settaggio opzionale COLOURED: GRAPH myvariable COLOURED (r,g,b) AS "my variable name" r,g,b sono degli interi tra 0 e 255 (Format RGB) ex: (255,0,0) per una curva rossa così come la trasparenza della curva: GRAPH myvariable COLOURED (r,g,b,a) AS "my variable name" a é un intero compreso tra 0 e 255 e indica la trasparenza (0 per una curva totalmente trasparente, 255 per una curva piena) Un nuovo sotto-grafico appare sotto la curva Guadagni/Perdite del suo Backtest. Questo sotto-grafico contiene i valori di myvariable a ogni barra, come nell'esempio sotto: Note: L'istruzione GRAPH non può essere utilizzata in trading automatico. 5 variabili al massimo possono essere visualizzate simultaneamente sullo stesso grafico. Ogni variabile supplementare sarà ignorata. V / 75

35 Au t o Trading Pro Order AutoTrading ProOrder Questa parte di manuale spiega come prendere i sistemi di trading che hai precedentemente backtestato e eseguirli come sistemi di trading automatici. La prima sezione spiega come inviare un sistema di trading a ProOrder per prepararlo per l'esecuzione come un sistema di trading automatico. La seconda sezione spiega come iniziare un sistema di trading e verificare i risultati La terza sezione spiega i parametri dei sistemi di trading e le loro condizioni di esecuzione. La quarta sezione spiega come coesistono i sistemi di trading manuali e automatici nella piattaforma La quinta sezione spiega le implicazioni dell'esecuzione di sistemi di trading automatici multipli sullo stesso strumento. L'ultima sezione contiene una lista di indicatori che non possono essere usati su trading automatici a causa del loro metodo di calcolo. Ti consigliamo di leggere l'intero manuale prima di iniziare un sistema di trading per conoscere tutte le condizioni di esecuzione dei sistemi di trading. V / 75

36 Au t o Trading Pro Order Preparate un sistema di trading per l'esecuzione automatica Cominciate ad aprire la finestra ProOrder dal menù trading: Verrà visualizzata la seguente finestra che contiene le istruzioni per preparare un sistema di trading per il trading automatico. V / 75

37 Au t o Trading Pro Order Prima di tutto, scegliete il grafico e unità di tempo che volete per eseguire il vostro sistema di trading e cliccate sul tasto. Apparirà la finestra Indicatori e Sistemi di Trading. Cliccate su "Backtesting e Trading Automatico" per vedere la lista dei vostri sistemi di trading: Scegliete il sistema di trading che volete eseguire automaticamente e premete sul tasto "Preparati per il trading automatico". Il sistema di trading apparirà poi su ProOrder. V / 75

38 Au t o Trading Pro Order Come iniziare un sistema di trading su ProOrder e controllarne i risultati Una volta che avete aggiunto un sistema di trading su ProOrder, potrete definire la grandezza massima della posizione per questo sistema e poi cominciare il trading con questo, premendo il tasto start: Una finestra popup vi chiederà di confermare che volete eseguire il sistema che si consiglia di leggere con attenzione. Notate che la "Grandezza massima posizione" presente su ProOrder ha la precedenza sulle istruzioni del codice. La grandezza massima della posizione per futures e forex é definita in numero di lotti o contratti. Per esempio, se il vostro codice ha un'istruzione di comprare 3 lotti, ma limitate la grandezza massima della posizione a 1, quest'ordine di acquisto sarà ignorato. Allo stesso modo, se il vostro codice ha un'istruzione di comprare 1 lotto, poi vendete 3 lotti, l'ordine di vendita sarà ignorato e vi rimarrà 1 posizione. Si deve sempre verificare la grandezza massima della posizione prima di eseguire un codice. Per le azioni, la grandezza massima della posizione é definita in contanti (non incluse le spese di intermediazione). Dopo aver premuto sul tasto "Start", il sistema sarà visualizzato nella sezione "In corso di esecuzione" come mostrato qui sotto. V / 75

39 Au t o Trading Pro Order Una volta che il sistema di trading é iniziato, la sua posizione, guadagno latente e guadagno totale saranno mostrati nella finestra ProOrder. E' possibile cliccare sul link nella sezione "Versione" per vedere la copia del codice di questo sistema. Potete anche cliccare sul tasto giallo mostrato qui sotto per vedere la curva dei guadagni e perdite del sistema e un rapporto dettagliato delle sue performance. V / 75

40 Au t o Trading Pro Order Un esempio della curva dei guadagni e perdite del sistema in esecuzione e il suo rapporto dettagliato: V / 75

41 Au t o Trading Pro Order Nota bene: Il guadagno nella sezione Statistiche delle posizioni chiuse puo' essere diverso dal valore della curva dei guadagni e perdite perché il sistema é ancora in corso di esecuzione e la curva dei guadagni e perdite prende in considerazione posizioni ancora aperte. V / 75

42 Au t o Trading Pro Order Parametri del trading automatico e condizioni di esecuzione Parametri del sistema di trading Prima di eseguire qualsiasi sistema di trading, cliccate sull'icona a chiave inglese mostrata in giallo per configurare i parametri del vostro trading: Un link per mostrare le condizioni di esecuzione del vostro sistema di trading é anche incluso nella parte inferiore di questa finestra ("Clicca qui"). Vi invitiamo a leggere con attenzione queste condizioni. V / 75

43 Au t o Trading Pro Order Stop automatico dei sistemi di trading Data di validità: Tutti i sistemi di trading in corso di esecuzione hanno una data di validità comune. Se non cliccate sul tasto "Prolunga" prima di questa data, ProOrder li interromperà automaticamente. Potete vedere la data di validità (espresso nel fuso orario del computer) e prolungare la validità dei vostri sistemi di trading con il tasto "Prolunga" nella parte inferiore della finestra ProOrder quando un sistema di trading é in corso di esecuzione: La quantità di tempo di ogni prolungamento puo' essere configurata all'interno della linguetta "Trading automatico" nella finestra Preferenze del trading. Si puo' aumentare questo parametro quando avete sistemi di trading in corso di esecuzione. La modifica sarà applicata con il prossimo prolungamento che avete fatto. Numero di ordini piazzati: ProOrder puo' interrompere qualsiasi sistema di trading se la somma degli ordini in attesa e se il numero di ordini eseguiti dall'apertura del mercato (0:00 GMT per il mercato del forex) é superiore o uguale alla quantità scelta nella linguetta Trading automatico nella finestra "Preferenze del trading". Un ordine in attesa é un ordine che era inviato al broker e non eseguito, rigettato o cancellato. Per esempio, ogni istruzione "Set stop" o "Set Trailing stop" o "Set target" fino a quando l'ordine corrispondente non é stato cancellato, rifiutato o eseguito. Inoltre, 3 diversi ordini limite o 3 diversi ordini stop che non sono stati cancellati, rifiutati o eseguiti conteranno come 3 ordini in attesa. Questo é vero se i 3 ordini sono sullo stesso livello di prezzo o su livelli di prezzo diversi. V / 75

44 Au t o Trading Pro Order Se scegliete per esempio un livello di stop di 8 ordini e dall'apertura del mercato 5 ordini sono stati eseguiti con un dato sistema di trading e questo sistema ha una posizione aperta e 2 ordini in attesa (uno "set target" e uno "set stop") e il sistema ha bisogno di inviare un ordine supplementare a mercato: questo 8 ordine non sarà inviato (5+2+1 raggiunge il livello stop), questo sistema di trading sarà interrotto con gli ordini in attesa cancellati prima, e poi la posizione chiusa. Rifiuto di ordini: ProOrder puo' interrompere qualsiasi sistema di trading se vengono rigettati troppi ordini. Potete scegliere di interrompere immediatamente un sistema di trading nel caso in cui un ordine sia rigettato o scegliere un numero predeterminato di tentativi. Non é possibile cambiare i parametri del rigetto quando un sistema di trading é in corso di esecuzione. Coesistenza nella piattaforma del trading manuale e automatico Se un sistema di trading é in corso di esecuzione su un valore, non sarà più possibile tradare manualmente su questo valore dalla piattaforma mentre il sistema é in esecuzione. Potete continuare a tradare manualmente su altri valori. Sui valori sui quali i sistemi di trading sono in esecuzione, gli strumenti di trading manuale saranno sostituiti con un tasto che mostra il trading automatico attivato per questo valore: Si puo' cliccare su questo tasto per aprire la finestra ProOrder e controllare i sistemi di trading in esecuzione. V / 75

45 Au t o Trading Pro Order Sistemi di trading multipli in corso di esecuzione sullo stesso valore Se avete sistemi di trading multipli in corso di esecuzione sullo stesso valore, la posizione netta é determinata su tutti questi sistemi di trading. Per esempio, se ci sono 2 sistemi di trading ed uno compra 1 lotto e l'altro vende 1 lotto, la posizione netta sarà 0. Unicamente la posizione netta presa con tutti sistemi di trading sarà aperta a mercato in un dato momento per un dato valore. Quando aprite la curva dei guadagni e perdite di un sistema di trading, vedrete il grafico "Posizioni". Questo indica la posizione di un sistema di trading individuale su questo valore che puo' essere diverso dalla vostra posizione netta su questo valore (determinata da tutti i sistemi di trading in corso di esecuzione su questo valore). La posizione netta viene mostrata dalla linea della posizione. Esempio: 2 sistemi di trading sono in corso di esecuzione sullo stesso valore: uno sta comprando 6 lotti di grandezza ciascuno e l'altro sta comprando 2 lotti di grandezza ciascuno = posizione netta In questo esempio la posizione del sistema di trading mostrata sul grafico é La posizione netta mostrata dalla linea della posizione é V / 75

46 Au t o Trading Pro Order La posizione netta di viene anche mostrata sulla finestra "Trading" > "Portafogli": Quando stanno funzionando più sistemi di trading sullo stesso valore, ogni istanza del sistema in funzione segue indipendentemente la sua propria posizione attuale, ordini, trade, e guadagni. Di conseguenza, le istruzioni "LongOnMarket", "ShortOnMarket" vi dicono se il sistema in funzione attualmente é lungo o corto. La vostra posizione netta su un valore puo' essere diversa dalla posizione di un dato sistema. Your net position on a security may be different from the position of a given system. Allo stesso modo, altre variabili di stato come "CountOfLongShares", "CountOfShortShares", "CountOfPosition", "PositionPrice", "StrategyProfit", "TradeIndex", "TradePrice" e "PositionPerf" applicano solo la strategia corrente. Restrizioni per indicatori I seguenti indicatori non possono essere usati per trading automatici perché il loro modo di calcolo non permette l'uso del tempo reale: ZigZag: i segnali che sono basati su questo indicatore sono ricalcolati dopo il fatto e di conseguenza, i segnali dati in tempo reale possono essere molto diversi dai segnali dati durante i backtest. Informazioni riguardanti il fuso orario e gli orari di trading personalizzati Quando invia un sistema di trading a ProOrder, il fuso orario e gli orari di trading associati alla strategia sono quelli che sono stati impostati per il mercato dello strumento finanziario. Queste impostazioni vengono applicate ad ogni invio della strategia. Per modificare il fuso orario e gli orari di trading di una strategia è necessario eliminare la strategia da ProOrder e modificare le impostazioni dal menù "Opzioni / Fuso orario & Orari di trading". A questo punto sarà possibile inviare di nuovo il sistema di Trading a ProOrder. Per maggiori informazioni circa le istruzioni che dipendono dal fuso orario del grafico e le impostazioni degli orari di trading leggere la sezione "Personalizzazione degli orari di trading per il backtest". V / 75

47 Al l egato A: Risult ati del si stem a di t rading Allegato A: Risultati del sistema di trading I risultati del sistema di trading si presentano in 3 forme complementari: Curva guadagni e perdite La Curva guadagni e perdite di un backtest mostra il profitto e perdita del sistema di trading o backtest: La linea blu orizzontale rappresenta il capitale iniziale nel caso del backtest o 0 nel caso di un sistema di trading automatico. Cosi', nel caso del backtest che ha un capitale iniziale di e una perdita di 2705, il valore della curva dei guadagni e perdite sarebbe 7295 come mostrato nell'esempio qui sotto. Nel caso di un sistema automatico di trading con la stessa perdita, il valore iniziale sarebbe 0 e il valore finale sarebbe Il riempimento della curva guadagni e perdite sarà di colore verde se la performance globale é positiva (il capitale é aumentato in rapporto al capitale iniziale), di colore rosso se la performance globale é negativa. Il tratto della curva guadagni e perdite sarà di colore verde per indicare una variazione positiva in rapporto al livello precedente, di colore rosso per indicare una variazione al ribasso. V / 75

48 Al l egato A: Risult ati del si stem a di t rading Grafico delle posizioni L'istogramma delle posizioni vi permette di visualizzare in istogramma l'evoluzione delle posizioni prese durante la simulazione del sistema di trading. Una barra verde indica l'apertura di una posizione lunga (acquisto). Una barra rossa indica l'apertura di una posizione corta (short). Se non si visualizza nessuna barra, nessuna posizione é aperta sul mercato. La comparsa di più barre successive e dello stesso colore indica che la o le posizioni sono ancora aperte. Sull'asse verticale visibile sul lato destro del grafico, vedrete le diverse posizioni che avete aperto attualmente (evidenziate). Nell'esempio qui sotto, possiamo constatare che siamo in posizione aperta lunga di un lotto di unità sull'eur/usd. V / 75

49 Al l egato A: Risult ati del si stem a di t rading Rapporto dettagliato Il rapporto dettagliato vi permette di visualizzare le statistiche del sistema di trading e ugualmente il dettaglio di ogni posizione e ordine: V / 75

50 Al l egato A: Risult ati del si stem a di t rading Il rapporto dettagliato si presenta in una finestra indipendente composta da tre linguette: La linguetta "Statistiche delle posizioni chiuse" vi darà una visione esaustiva delle performance del vostro sistema di trading (guadagno o perdita, numero di trade vincenti,...) ed anche degli indicatori di rischio come max drawdown. Notate che questa linguetta non include le analisi delle posizioni aperte nel momento in cui il rapporto é generato (vengono prese in considerazione solo le posizioni chiuse). Qui di seguito troverai la lista delle statistiche: "Guadagno", indica il guadagno o perdita realizzata con il sistema di trading. Matematicamente, questo si traduce nella formula: Guadagno = Importo del capitale finale Importo del capitale iniziale Questa statistica permette di valutare il potenziale guadagno assoluto con il sistema di trading definito per il periodo storico testato e per ogni combinazione di variabile. Nota bene: i parametri di intermediazione definite nella sezione "Parametri di intermediazione" sono presi in considerazione nel calcolo. "%Guadagno", rappresenta il guadagno o perdita in %. Si traduce con la formula: %Guadagno = 100 x Profitto/ Importo del capitale iniziale "N posizioni" indica il numero di posizioni che sono state aperte durante il backtest. "% Posizioni vincenti" indica la percentuale di posizioni vincenti. Si traduce con la formula: % posizioni vincenti = (100 x Numero di posizioni vincenti) / Numero di posizioni "Guad. medio di posizioni vincenti": é il guadagno medio per posizione. Puo' essere utile determinare l'efficacia degli ordini piazzati. Il guadagno medio per posizione é particolarmente importante quando si crea un sistema di trading che piazza un basso numero di ordini. Matematicamente, si definisce come: Guad. medio di posizioni vincenti = Guadagno / Numero di posizioni "Profitto miglior posizione" é il guadagno massimo su una posizione presa e "Perdita peggior posizione" é la perdita massima sulla posizione presa dall'inizio del sistema di trading. "Scarto tipo profitti e perdite" é lo scarto tipo di risultati di ogni posizione. Max Drawdown: é il potenziale di perdite massimo del sistema di trading. Il drawdown é definito come la distanza tra un dato punto ed il punto massimo che lo precede nella curva dei guadagni e perdite: DD(n)= Max t [0 ;n] P(t) - P(n) Il "Max drawdown" é calcolato come il più grande drawdown dell'intera storia del sistema di trading. MaxDD(N) = Max n [0:N] ( Max t [0;n] P(t) - P(n) ) Max Run-up: é il potenziale guadagno massimo del sistema di trading. Il run-up é definito come la differenza tra un dato punto e il punto più basso che lo precede nella curva dei guadagni e perdite: RU(n)= P(n) Min t [0;n] P(t) "Max Run-up" é calcolato come il massimo di questo valore dell'intera storia del sistema di trading. MaxRU(N) = Max n [0;N] ( P(n) Min t [0;n] P(t) ) V / 75

51 Al l egato A: Risult ati del si stem a di t rading Esempio: BARINDEX PNL DRAWDOWN RUNUP 1 0,00 0,00 0, ,00 0,00-15, ,00 5,00-10,00 4 0,00 15,00 0, ,00 0,00-15, ,00 25,00 0, ,00 35,00 0,00 8-5,00 20,00-15,00 9-6,00 21,00-14, ,00 0,00-40, ,00 15,00-25,00 Max: -35,00 40,00 V / 75

52 Al l egato A: Risult ati del si stem a di t rading "% Max esposizione rischio": L'esposizione al rischio é il rapporto tra la perdita massima possibile sulla posizione e l'importo corrente del capitale. La % max esposizione rischio é quindi il massimo di questo valore espresso in percentuale. Sono da distinguere 3 casi: Azioni: % Max esposizione rischio = Max posizione (Quantità * prezzo medio / capitale) * 100 Futures: % Max esposizione rischio = Max posizione (Quantità * deposito / capitale) * 100 Forex: % Max esposizione rischio = Max posizione (Quantità * prezzo medio * effetto leva / capitale) * 100 Ugualmente, "% Esposiz. media al rischio" é la percentuale media dell'esposizione al rischio. "Commissioni" contabilizza l'insieme delle commissioni di ogni ordine dall'inizio del sistema di trading. Queste commissioni sono definite nei parametri della sezione di un backtest. La % di tempo nel mercato viene calcolata come il numero delle barre con una posizione aperta diviso il numero delle barre del sistema di trading. Le 2 linguette seguenti vi danno delle informazioni su tutti gli ordini piazzati e le posizioni aperte e chiuse durante l'esecuzione del sistema di trading automatico o backtest. Nella "Lista ordini" troverete una lista di tutti gli ordini piazzati includendo i dettagli sull'ora, il senso, la quantità e il prezzo. Gli ordini sono mostrati con il fuso orario del mercato. Infine, nella "Lista posizioni chiuse" troverete un'informazione riguardo alle posizioni prese con il vostro sistema di trading (lunga o corta, la durata espressa in numero di barre, la performance di ogni posizione, la data di entrata e di uscita ). Se c'é una posizione ancora aperta nel momento in cui il rapporto é generato, non sarà inclusa in questa lista. Nel caso di un backtest, se volete chiudere tutte le posizioni alla fine del backtest, scegliete una data di fine fissa. V / 75

53 Al l egato B: Esempi di codici dettagliati Allegato B: Esempi di codici dettagliati Avvertimento: Gli esempi presentati in questo manuale sono a scopo pedagogico. Tutte le informazioni presenti sono a carattere generale e non rappresentano in nessun caso informazioni o consulenze personalizzate o incitazioni a comprare o vendere strumenti finanziari. Le performances passate non rappresentano previsioni per il futuro. Ogni sistema di trading può esporre a un rischio di perdite superiori all'investimento iniziale. Sistema di trading basato su Heikin Ashi Questo sistema di trading genera un segnale di acquisto quando, in stile Heiken-Ashi, una candela verde appare dopo una candela rossa. Un segnale di vendita viene emesso se una candela rossa appare dopo una candela verde. Questo backtest ricostruisce la vista Heikin Ashi da candele normali. Puo' essere applicato ad un grafico usando lo stile a candela normale (non lo stile a candela Heikin Ashi). ONCE PreviousStatus = 0 IF BarIndex = 0 THEN XClose = TotalPrice XOpen = (Open + Close) / 2 ELSE XClose = TotalPrice XOpen = (XOpen[1] + Xclose[1]) / 2 IF XClose >= XOpen THEN IF PreviousStatus <> 1 THEN BUY 1 SHARES AT MARKET PreviousStatus = 1 ELSE IF PreviousStatus <> -1 THEN SELLSHORT 1 SHARES AT MARKET PreviousStatus = -1 V / 75

54 Al l egato B: Esempi di codici dettagliati Avvertimento: Gli esempi presentati in questo manuale sono a scopo pedagogico. Tutte le informazioni presenti sono a carattere generale e non rappresentano in nessun caso informazioni o consulenze personalizzate o incitazioni a comprare o vendere strumenti finanziari. Le performances passate non rappresentano previsioni per il futuro. Ogni sistema di trading può esporre a un rischio di perdite superiori all'investimento iniziale. Sistema di trading basato sullo ZigZag Questo backtest si basa sullo ZigZag per determinare quali sarebbero state le migliori opportunità d'acquisto e di vendita. I risultati eccellenti di questo sistema di trading sul mercato delle azioni e futures sono legati al carattere non predittivo dello ZigZag, che viene ricalcolato a posteriori e non dà dunque dei segnali validi in tempo reale. La ragione per cui i risultati di questo sistema di trading sono interessanti é che danno dei risultati quasi ideali che possono essere comparati ad altri sistemi di trading. // I periodi dell'indicatore zigzag possono essere ottimizzati usando l'ottimizzazione di variabili myzigzag = ZigZag[10] c11 = (myzigzag > myzigzag[1]) c12 = (myzigzag < myzigzag[1]) IF c11 AND NOT LONGONMARKET THEN BUY 1 SHARES AT MARKET IF c12 AND NOT SHORTONMARKET THEN SELLSHORT 1 SHARES AT MARKET V / 75

55 Al l egato B: Esempi di codici dettagliati Avvertimento: Gli esempi presentati in questo manuale sono a scopo pedagogico. Tutte le informazioni presenti sono a carattere generale e non rappresentano in nessun caso informazioni o consulenze personalizzate o incitazioni a comprare o vendere strumenti finanziari. Le performances passate non rappresentano previsioni per il futuro. Ogni sistema di trading può esporre a un rischio di perdite superiori all'investimento iniziale. Sistema di trading Breakout Range con Trailing Stop Sistema di trading Breakout Range con Trailing Stop Si tratta di un sistema di trading di tipo BreakOut intraday che prende solo posizioni lunghe. Il range iniziale é determinato dai punti più alti e più bassi sulle 2 prime candele della giornata. Se il prezzo incrocia al rialzo una linea di resistenza e la media mobile 10 periodi aumenta, viene presa una posizione lunga. Viene definito un target a 1%. Uno stop di protezione é impostato sul livello del supporto, se il prezzo raggiunge questo livello, la posizione sarà chiusa con un ordine stop. La posizione é chiusa alle 5 del pomeriggio (ora di mercato) per non mantenere posizioni di notte. Un accesso intraday é necessario per testare questo sistema di trading. DEFPARAM CumulateOrders = False MM = Average[10](close) MyTarget = 1 EndTime = IF INTRADAYBARINDEX = 2 THEN MyResistance = highest[2](high) MySupport = lowest[2](low) REM Entra Lungo: IF MM > MM[1] AND close CROSSES OVER MyResistance THEN BUY 1 SHARES AT MARKET REM Esci Lungo: IF time > EndTime THEN SELL AT MARKET SELL AT MySupport STOP SET TARGET %Profit MyTarget V / 75

56 Al l egato B: Esempi di codici dettagliati Avvertimento: Gli esempi presentati in questo manuale sono a scopo pedagogico. Tutte le informazioni presenti sono a carattere generale e non rappresentano in nessun caso informazioni o consulenze personalizzate o incitazioni a comprare o vendere strumenti finanziari. Le performances passate non rappresentano previsioni per il futuro. Ogni sistema di trading può esporre a un rischio di perdite superiori all'investimento iniziale. Sistema di trading basato sullo stocastico lisciato Questo sistema di trading si basa sull'indicatore Stocastico Lisciato applicato al prezzo medio (indicatore 1) e alla media mobile esponenziale di questo valore (indicatore 2). Questo sistema di trading compra quando l'indicatore 1 é sopra l'indicatore 2 o entra una posizione corta quando l'indicatore 1 é sotto l'indicatore 2. Un target (limite) é definito ad 1% superiore al prezzo di entrata. DEFPARAM CumulateOrders = False REM Acquisto Indicator1 = SmoothedStochastic[9,9](MedianPrice) Indicator2 = ExponentialAverage[9](Indicator1) // InitVariabile StopLimit = 1 REM Inserire condizioni di acquisto c1 = (Indicator1 >= Indicator2) IF c1 THEN BUY 1 SHARES AT MARKET REM Inserire condizioni di vendita allo scoperto IF NOT c1 THEN SELLSHORT 1 SHARES AT MARKET SET TARGET %PROFIT StopLimit V / 75

57 Al l egato B: Esempi di codici dettagliati Avvertimento: Gli esempi presentati in questo manuale sono a scopo pedagogico. Tutte le informazioni presenti sono a carattere generale e non rappresentano in nessun caso informazioni o consulenze personalizzate o incitazioni a comprare o vendere strumenti finanziari. Le performances passate non rappresentano previsioni per il futuro. Ogni sistema di trading può esporre a un rischio di perdite superiori all'investimento iniziale. Swing Trading, ADX e Media Mobile Questo backtest si basa sull'indicatore ADX e sulla sua posizione rispetto al livello 30 da almeno 5 giorni, permettendo di ridurre i falsi segnali e di minimizzare i rischi. Puo' essere eseguito su un timeframe giornaliero. Il sistema di trading presenta varie condizioni che ne limitano il numero di opportunità di trading. DEFPARAM CumulateOrders = False MyADX12 = ADX[12] ADXperiods = 5 MyMM20 = Average[20](Close) IsLow30 = 0 IF lowest[adxperiods + 1](MyADX12) < 30 THEN IsLow30 = 1 // ACQUISTO // ADX 12 deve essere superiore a 30 per almeno 5 barre Condition1 = NOT IsLow30 // Se la media mobile di 20 periodi del periodo in corso é tra il massimo ed il minimo del periodo in corso e la media mobile del periodo precedente é tra il massimo e il minimo del periodo precedente Condition2 = High > MyMM20 AND Low < MyMM20 AND High[1] < MyMM20[1] AND Low[1] < MyMM20[1] // Se il massimo del giorno é più alto del giorno precedente Condition3 = Dhigh(0) > Dhigh(1) IF Condition1 AND Condition2 AND Condition3 THEN BUY 1 SHARES AT MARKET // SHORT // ADX 12 é superiore a 30 da almeno 5 barre Condition4 = NOT IsLow30 // Se la media mobile di 20 periodi del periodo in corso é tra il massimo ed il minimo del periodo in corso e la media mobile del periodo precedente é tra il massimo e il minimo del periodo precedente Condition5 = High > MyMM20 AND Low < MyMM20 AND High[1] > MyMM20[1] AND Low[1] > MyMM20[1] // Se il minimo del giorno é inferiore al minimo del giorno precedente Condition6 = Dlow(0) < Dlow(1) IF Condition4 AND Condition5 AND Condition6 THEN SELLSHORT 1 SHARES AT MARKET V / 75

58 Al l egato B: Esempi di codici dettagliati Avvertimento: Gli esempi presentati in questo manuale sono a scopo pedagogico. Tutte le informazioni presenti sono a carattere generale e non rappresentano in nessun caso informazioni o consulenze personalizzate o incitazioni a comprare o vendere strumenti finanziari. Le performances passate non rappresentano previsioni per il futuro. Ogni sistema di trading può esporre a un rischio di perdite superiori all'investimento iniziale. Sistema di trading che utilizza un contatore di posizioni Inverse Fisher Transform applicato al RSI Questo sistema di trading usa "l'inverse Fisher Transform RSI" per posizionare ordini di acquisto o di vendita. Il sistema posiziona un ordine di acquisto quando l'inverse Fisher Transform RSI incrocia al rialzo la soglia dei 50 e vende quando l'indicatore incrocia al ribasso la soglia degli 80. Posiziona un ordine di vendita allo scoperto quando l'inverse Fisher Transform RSI incrocia al ribasso la soglia dei 50 e riacquista quando l'inverse Fisher Transform RSI incrocia al rialzo la soglia dei 20. Questo sistema di trading é da testare sulle viste a 1h per i futures o sulle viste giornaliere per le azioni. REM Inverse Fisher Transform applicato al RSI REM Parametri : n = Numero di barre per il calcolo del RSI n = 10 Ind = RSI[n](Close) x = 0.1 * (Ind - 50) y = (EXP (2 * x) - 1) / (EXP (2 * x) + 1) z = 50 * (y + 1) myinversefishertransformsrsi = z IF (myinversefishertransformsrsi CROSSES OVER 50) THEN BUY 1 SHARES AT MARKET IF (myinversefishertransformsrsi CROSSES UNDER 80) THEN SELL AT MARKET IF (myinversefishertransformsrsi CROSSES UNDER 50) THEN SELLSHORT 1 SHARES AT MARKET IF (myinversefishertransformsrsi CROSSES OVER 20) THEN EXITSHORT AT MARKET V / 75

59 Al l egato B: Esempi di codici dettagliati Avvertimento: Gli esempi presentati in questo manuale sono a scopo pedagogico. Tutte le informazioni presenti sono a carattere generale e non rappresentano in nessun caso informazioni o consulenze personalizzate o incitazioni a comprare o vendere strumenti finanziari. Le performances passate non rappresentano previsioni per il futuro. Ogni sistema di trading può esporre a un rischio di perdite superiori all'investimento iniziale. Sistemi di trading che utilizzano TradeIndex Find inside bar Il seguente esempio é un sistema di trading basato su un pattern di prezzo utilizzato frequentemente e conosciuto come "Inside Bar" sulla base di due forme di candele. La prima forma interviene se il range della 2a candela che precede la candela in corso é più grande del range della candela che precede la candela in corso. Questa candela che precede la candela in corso deve essere bianca (chiusura > apertura). In questo caso, viene presa una posizione lunga. La seconda forma interviene se il range della 2a candela che precede la candela in corso é inferiore al range della candela che precede la candela in corso e la candela che precede quella attuale é nera (chiusura < apertura). In questo caso, prendiamo una posizione corta. Tutte le posizioni sono sistematicamente chiuse 3 barre dopo che sono aperte. DEFPARAM CumulateOrders = False Condition1 = (High[2] >= High[1] AND Low[2] <= Low[1]) Condition2 = (High[2] <= High[1] AND Low[2] <= Low[1]) Condition3 = (Close[1] > Open[1]) Condition4 = (Close[1] < Open[1]) IF (Condition1 AND Condition3) THEN BUY 1 Share AT MARKET IF LONGONMARKET AND (BarIndex - TRADEINDEX) = 3 THEN SELL 1 share AT MARKET IF (Condition2 AND Condition4) THEN SELLSHORT 1 share AT MARKET IF SHORTONMARKET AND (BarIndex - TRADEINDEX) = 3 THEN EXITSHORT AT MARKET V / 75

60 Al l egato B: Esempi di codici dettagliati Avvertimento: Gli esempi presentati in questo manuale sono a scopo pedagogico. Tutte le informazioni presenti sono a carattere generale e non rappresentano in nessun caso informazioni o consulenze personalizzate o incitazioni a comprare o vendere strumenti finanziari. Le performances passate non rappresentano previsioni per il futuro. Ogni sistema di trading può esporre a un rischio di perdite superiori all'investimento iniziale. Sistemi di money management I risultati di un backtest possono essere migliorati usando i sistemi di money management. Questi sistemi sono spesso formalizzati in "martingale", destinate ad ottimizzare la speranza matematica di un sistema di trading, che corrisponde al guadagno medio o alla perdita media per ogni transazione se più transazioni sono fatte. Cio' implica di poter innanzitutto stimare la probabilità che un'operazione sia vincente e l'importo guadagnato. Per implementare una martingala, puo' essere utile avere uno stop loss, take profit e ordini inattivi codificati direttamente nel vostro sistema di trading, cosi' da poterli personalizzare interamente ed avere dei sottosistemi che permettono di gestire dinamicamente la grandezza delle posizioni. Stop di protezione e Target Per maggiori informazioni sugli stop di protezione, trailing stop e profit target, vedere le apposite sezioni del manuale. Stop d'inattività Il codice sotto riportato permette di usare uno stop di inattività nel vostro sistema di trading. Non dimenticate di definire le condizioni del vostro stop, qui nominato InactivityStopLong e InactivityStopShort. Nel seguente esempio, lo stop é scattato dopo 10 barre. ONCE Count = 10 REM Scelta del numero di barre dopo che la posizione sarà automaticamente chiusa IF ONMARKET AND (BARINDEX - TRADEINDEX + 1) > Count THEN IF LONGONMARKET THEN SELL AT MARKET IF SHORTONMARKET THEN EXITSHORT AT MARKET V / 75

61 Al l egato B: Esempi di codici dettagliati Avvertimento: Gli esempi presentati in questo manuale sono a scopo pedagogico. Tutte le informazioni presenti sono a carattere generale e non rappresentano in nessun caso informazioni o consulenze personalizzate o incitazioni a comprare o vendere strumenti finanziari. Le performances passate non rappresentano previsioni per il futuro. Ogni sistema di trading può esporre a un rischio di perdite superiori all'investimento iniziale. Cumulo di ordini Aggiunta di una posizione esistente con l'uso di un contatore di posizioni Nella seguente sezione viene presentato un esempio di cumulo di ordini per aumentare la grandezza della posizione. Per attivare il cumulo di ordini, inserite il comando "DEFPARAM CumulateOrders=True" all'inizio del programma. Questo sistema di trading usa la prima condizione basata sul RSI per prendere solo la posizione iniziale. Vengono aggiunti ad ogni barra titoli addizionali in cui l'apertura é superiore alla chiusura precedente fino ad un massimo di 3. "Countofposition" viene utilizzato in questo codice per limitare la grandezza massima della posizione a 3. DEFPARAM CumulateOrders = True REM Comprate 1 quando RSI < 30 e non ci sono posizioni già aperte IF RSI[14](Close) < 30 AND NOTONMARKET THEN BUY 1 SHARES AT MARKET REM Se c'é una posizione aperta lunga e l'apertura > chiusura precedente, ogni volta compriamo una quantità addizionale fino ad un massimo di tre. IF LONGONMARKET AND COUNTOFPOSITION < 3 THEN AND Open > Close[1] THEN BUY 1 SHARES AT MARKET REM Quando il prezzo incrocia sotto una media mobile semplice, chiudete la posizione IF Close Crosses Under Average[14](Close) THEN SELL AT MARKET Con questi strumenti, possiamo adesso guardare la martingala. Qui ce ne sono alcune tre le più famose. Queste tecniche possono essere aggiunte su qualsiasi sistema di trading. V / 75

62 Al l egato B: Esempi di codici dettagliati Avvertimento: Gli esempi presentati in questo manuale sono a scopo pedagogico. Tutte le informazioni presenti sono a carattere generale e non rappresentano in nessun caso informazioni o consulenze personalizzate o incitazioni a comprare o vendere strumenti finanziari. Le performances passate non rappresentano previsioni per il futuro. Ogni sistema di trading può esporre a un rischio di perdite superiori all'investimento iniziale. La martingala classica La martingala classica consiste nel raddoppiare la grandezza della posizione quando si é confrontati ad una perdita, in modo da rifarsi la volta successiva e guadagnare una volta recuperata la posizione di partenza. L'inconveniente maggiore di un tale sistema di trading é che una serie di perdite consecutive rende sempre più difficile o impossibile continuare a raddoppiare la propria posizione. Cominciando con 1000 per esempio, se perdiamo cinque volte di seguito, bisognerà disporre di 1000x32 cioé per continuare con questo sistema di trading. Di conseguenza, i sistemi di trading con la martingala possono essere più adatti al trading d'azioni, che ai futures o al Forex poiché il capitale iniziale richiesto per tradare puo' essere più importante in questi 2 tipi di mercati. Questo codice puo' essere integrato con le vostre condizioni di entrata e di uscita. //***********Codice da inserire all'inizio del sistema di trading**********// ONCE OrderSize = 1 ONCE ExitIndex = -2 REM Initial position size of 1. //*********************// //***********Codice da inserire subito dopo la chiusura della posizione**********// ExitIndex = BarIndex //***********Codice da inserire alla fine del sistema di trading**********// IF Barindex = ExitIndex + 1 THEN ExitIndex = 0 IF PositionPerf(1) < 0 THEN OrderSize = OrderSize * 2 REM Se l'ultimo trade é perdente, allora raddoppiamo la grandezza della posizione ELSIF PositionPerf(1) > 0 THEN OrderSize = 1 REM Se l'ultimo trade é vincente, allora ritorniamo ad una posizione di grandezza 1 //*********************// REM La grandezza della posizione deve essere determinata sulla variabile OrderSize nell'intero codice V / 75

63 Al l egato B: Esempi di codici dettagliati Avvertimento: Gli esempi presentati in questo manuale sono a scopo pedagogico. Tutte le informazioni presenti sono a carattere generale e non rappresentano in nessun caso informazioni o consulenze personalizzate o incitazioni a comprare o vendere strumenti finanziari. Le performances passate non rappresentano previsioni per il futuro. Ogni sistema di trading può esporre a un rischio di perdite superiori all'investimento iniziale. La grande martingala La grande martingala é simile alla martingala classica, salvo che non si raddoppia solamente la posizione ad ogni perdita, ma si aggiunge anche un'unità supplementare. Questa martingale é più pericolosa della martingala classica, in caso di perdite successive, ma permette di aumentare significativamente i guadagni in caso contrario. Questo codice puo' essere integrato con le vostre condizioni di entrata e di uscita. //***********Codice da inserire all'inizio del sistema di trading**********// ONCE OrderSize = 1 ONCE ExitIndex = -2 // Cominciamo con una posizione di 1 //*********************// //***********Codice da inserire subito dopo la chiusura di una posizione**********// ExitIndex = BarIndex //***********Codice da inserire alla fine del sistema di trading**********// IF Barindex = ExitIndex + 1 THEN ExitIndex = 0 IF PositionPerf(1) < 0 THEN OrderSize = OrderSize * // se l'ultimo trade era perdente, radoppia OrderSize eaggiungi 1. ELSIF PositionPerf(1) >= 0 THEN OrderSize = 1 // Se l'ultimo trade era vincente, allora impostiamo l' OrderSize a 1. //*********************// REM La grandezza della posizione deve essere determinata sulla variabile OrderSize nell'intero codice V / 75

64 Al l egato B: Esempi di codici dettagliati Avvertimento: Gli esempi presentati in questo manuale sono a scopo pedagogico. Tutte le informazioni presenti sono a carattere generale e non rappresentano in nessun caso informazioni o consulenze personalizzate o incitazioni a comprare o vendere strumenti finanziari. Le performances passate non rappresentano previsioni per il futuro. Ogni sistema di trading può esporre a un rischio di perdite superiori all'investimento iniziale. La Piquemouche La Piquemouche é un'altra variante della martingala classica. In caso di perdite, aumentiamo la grandezza della posizione di 1 se abbiamo meno di 3 perdite consecutive. Se abbiamo più di 3 perdite consecutive, raddoppiamo la posizione. Un guadagno rimette la posizione a 1 unità. Questo sistema di trading é meno pericoloso dei due precedenti, poiché non aumentiamo la grandezza della posizione in maniera esponenziale prima di 3 perdite successive. Questo codice puo' essere integrato con le vostre condizioni di entrata e di uscita. //***********Codice da inserire all'inizio del sistema di trading**********// ONCE OrderSize = 1 ONCE BadTrades = 0 ONCE ExitIndex = -2 // Cominciamo con una posizione di 1 //*********************// //***********Codice da inserire subito dopo la chiusura di una posizione**********// ExitIndex = BarIndex //***********Codice da inserire alla fine del sistema di trading**********// IF Barindex = ExitIndex + 1 THEN ExitIndex = 0 IF PositionPerf(1) < 0 THEN BadTrades = BadTrades + 1 IF BadTrades < 3 THEN // Se l'ultimo trade era perdente e abbiamo meno di 3 perdite successive, // aggiungilo a OrderSize OrderSize = OrderSize + 1 ELSIF BadTrades MOD 3 = 0 THEN // Se l'ultimo trade era perdente e abbiamo più di tre perdite successive // raddoppiamo OrderSize OrderSize = OrderSize * 2 ELSIF PositionPerf(1) >= 0 THEN // Se l'ultimo trade era vincente, inizializza OrderSize a 1. OrderSize = 1 BadTrades = 0 //*********************// REM La grandezza della posizione deve essere determinata dalla variabile OrderSize nell'intero codice. V / 75

65 Al l egato B: Esempi di codici dettagliati Avvertimento: Gli esempi presentati in questo manuale sono a scopo pedagogico. Tutte le informazioni presenti sono a carattere generale e non rappresentano in nessun caso informazioni o consulenze personalizzate o incitazioni a comprare o vendere strumenti finanziari. Le performances passate non rappresentano previsioni per il futuro. Ogni sistema di trading può esporre a un rischio di perdite superiori all'investimento iniziale. La piramide d'alembert Questa martingala é stata resa famosa da d Alembert, matematico francese del XVIIIe secolo. In caso di perdita, la grandezza della posizione é aumentata di un'unità e in caso di guadagno, viene diminuita di un'unità. Questa tecnica di gestione della grandezza delle posizioni é pertinente solo quando pensiamo che i guadagni successivi diminuiscano la probabilità di guadagnare ancora e che le perdite successive riducano la probabilità di perdere ancora. Questo codice puo' essere integrato con le vostre condizioni di entrata e di uscita. //***********Codice da inserire all'inizio del sistema di trading**********// ONCE OrderSize = 1 ONCE ExitIndex = -2 // Cominciamo con una posizione di 1 //*********************// //***********Codice da inserire subito dopo la chiusura di una posizione**********// ExitIndex = BarIndex //***********Codice da inserire alla fine del sistema di trading**********// IF Barindex = ExitIndex + 1 THEN ExitIndex = 0 IF PositionPerf(1) < 0 THEN OrderSize = OrderSize + 1 ELSIF PositionPerf(1) >= 0 THEN OrderSize = MAX(OrderSize -1, 1) //*********************// REM La grandezza della posizione deve essere determinata dalla variabile OrderSize nell'intero codice. V / 75

66 Al l egato B: Esempi di codici dettagliati Avvertimento: Gli esempi presentati in questo manuale sono a scopo pedagogico. Tutte le informazioni presenti sono a carattere generale e non rappresentano in nessun caso informazioni o consulenze personalizzate o incitazioni a comprare o vendere strumenti finanziari. Le performances passate non rappresentano previsioni per il futuro. Ogni sistema di trading può esporre a un rischio di perdite superiori all'investimento iniziale. L'inverso d'alembert Si tratta di un sistema di trading contrario alla Piramide D'Alembert. Diminuiamo la grandezza della posizione in caso di perdita o aumentiamo la grandezza della posizione in caso di guadagno. Questa tecnica é dunque pertinente quando si ritiene che una perdita passata aumenti la probabilità di una perdita futura e un guadagno passato aumenti la probabilità di un futuro guadagno. Questo codice puo' essere integrato con le vostre condizioni di entrata e di uscita. //***********Codice da inserire all'inizio di un sistema di trading**********// ONCE OrderSize = 1 ONCE ExitIndex = -2 // Cominciamo con una posizione di 1 //*********************// //***********Codice da inserire subito dopo la chiusura di una posizione**********// ExitIndex = BarIndex //***********Codice da inserire alla fine del sistema di trading**********// IF Barindex = ExitIndex + 1 THEN ExitIndex = 0 IF PositionPerf(1) < 0 THEN OrderSize = MAX(OrderSize -1, 1) ELSIF PositionPerf(1) >= 0 THEN OrderSize = OrderSize + 1 //*********************// REM La grandezza della posizione deve essere determinata dalla variabile OrderSize nell'intero codice. V / 75

67 Glossar io Glossario A CODICE IMPLEMENTAZIONE FUNZIONE ABS ABS(a) Funzione matematica "Valore assoluto" AccumDistr AccumDistr(price) Designa l'accumulazione distribuzione classica ADX ADX[N] Indicatore Average Directional Index di n periodi ADXR ADXR[N] Indicatore Average Directional Index Rate di n periodi AND a AND b Operatore logico E AroonDown AroonDown[P] Designa l'aroon Down di n periodi AroonUp AroonUp[P] Designa l'aroon Up di n periodi ATAN ATAN(a) Funzione matematica Arco Tangente AS RETURN x AS "ResultName" Istruzione che serve ad attribuire un nome ad una linea o indicatore mostrato sul grafico. Usato con "RETURN" AT AT (price) Designa l'associazione al prezzo Average Average[N](price) Media Mobile Semplice di n periodi AverageTrueRange AverageTrueRange[N](price) Designa la Media mobile lisciata da Wilder del True Range B CODICE IMPLEMENTAZIONE FUNZIONE BarIndex BarIndex Numero di barre dall'inizio dei dati caricati (per un sistema di trading nel caso di ProBacktest o ProOrder, o in un grafico nel caso di un indicatore ProBuilder). Vedi anche: PreLoadBars. BollingerBandWidth BollingerBandWidth[N](price) Banda passante di Bollinger BollingerDown BollingerDown[N](price) Supporto della banda di Bollinger BollingerUp BollingerUp[N](price) Resistenza della banda di Bollinger BREAK (FOR...DO...BREAK...NEXT) o (WHILE...DO...BREAK...WEND) Istruzione per forzare l'uscita da un circolo FOR o WHILE BUY BUY x SHARES Istruzione di apertura di posizione lunga V / 75

68 Glossar io C CODICE IMPLEMENTAZIONE FUNZIONE CALL myresult=call myfunction Permette di richiamare un altro indicatore CASH BUY x CASH Designa l'importo usato nella posizione CCI CCI[N](price) o CCI[N] Dà il Commodity Channel Index ChaikinOsc ChaikinOsc[Ch1, Ch2](price) Designa l'oscillatore di Chaikin Chandle Chandle[N](price) Designa il Chande Momentum Oscillator ChandeKrollStopUp ChandeKrollStopDown ChandeKrollStopUp[Pp, Qq, X] ChandeKrollStopDown[Pp, Qq, X] Stop di protezione secondo Chande e Kroll in posizione di acquisto Stop di protezione secondo Chande e Kroll in posizione di vendita Close Close[N] Designa il prezzo di chiusura della barra corrente oppure l'ultimo prezzo registrato COLOURED RETURN x COLOURED(R,G,B) Permette di personalizzare il colore di una curva, secondo la convenzione RGB COS COS(a) Funzione coseno COUNTOFLONGSHARES COUNTOFLONGSHARES Conta il numero di titoli o lotti nelle posizioni lunghe COUNTOFPOSITION COUNTOFPOSITION Conta il numero di titoli o lotti nelle posizioni (o di acquisto o di vendita) COUNTOFSHORTSHARES COUNTOFSHORTSHARES Conta il numero di titoli o lotti nelle posizioni corte CONTRACT BUY 1 CONTRACT Designa il numero di contratti da acquistare. Equivale a "Shares" CROSSES OVER a CROSSES OVER b Operatore boleano che verifica che una curva passa al di sopra di un'altra CROSSES UNDER a CROSSES UNDER b Operatore boleano che verifica che una curva passa al di sotto di un'altra cumsum cumsum(price) Somma di un prezzo dall'inizio dello storico mostrato CumulateOrders DEFPARAM CumulateOrders=true/false Quando é impostato su false, impedisce al code di rafforzare le posizioni e di impostare ordini multipli per entrare a mercato nella stessa direzione. CustomClose CustomClose[N] Costante parametrabile nella finestra proprietà Cycle Cycle(price) Indicatore Cycle V / 75

69 Glossar io D CODICE IMPLEMENTAZIONE FUNZIONE Date Date[N] Designa la data di ogni barra caricata nel grafico Day Day[N] Designa il giorno di ogni barra caricata nel grafico Days Days[N] Contatore di giorni dal 1900 DayOfWeek DayOfWeek[N] Designa il giorno della settimana di ogni barra DClose DClose(N) Prezzo di chiusura dell'ennesima giornata anteriore a quella della barra corrente DEFPARAM DEFPARAM Permette di definire dei parametri come CumulateOrders DEMA DEMA[N](price) Doppia Media Mobile Esponenziale DHigh DHigh(N) Prezzo più alto dell'ennesima giornata precedente a quella della barra corrente DI DI[N](price) Designa il DI+ meno il DI- DIminus DIminus[N](price) Designa l'indicatore DI- DIplus DIplus[N](price) Designa l'indicatore DI+ DLow DLow(N) Il Minimo dell'ennesima giornata anteriore a quella della barra corrente DO Vedere FOR e WHILE Istruzione facoltativa dei FOR e WHILE per l'azione di chiusura DOpen DOpen(N) Prezzo di apertura dell'ennesima giornata anteriore a quella della barra corrente DOWNTO Vedere FOR Istruzione di lettura decrescente per FOR DPO DPO[N](price) Designa il Detrented Price Oscillator V / 75

70 Glossar io E CODICE IMPLEMENTAZIONE FUNZIONE EaseOfMovement EaseOfMovement[I] Designa l'indicatore Ease of Movement ELSE Vedere IF/THEN/ELSE/ Istruzione per introdurre la seconda condizione in alternativa alla prima uscita di IF ELSEIF Vedere IF/THEN/ELSIF/ELSE/ Contrazione di ELSE IF (da inserire all'interno della condizione) EMV EMV[N] Designa l'indicatore Ease of Movement Value Vedere IF/THEN/ELSE/ Istruzione di chiusura delle istruzioni condizionali EndPointAverage EndPointAverage[N](price) Media Mobile all'ultimo punto EXITSHORT EXITSHORT x SHARES Istruzione che chiude una posizione short EXP EXP(a) Funziona matematica esponenziale ExponentialAverage ExponentialAverage[N](price) Media Mobile Esponenziale F - G CODICE IMPLEMENTAZIONE FUNZIONE FOR/TO/NEXT FOR i=a TO b DO a NEXT Ciclo FOR (elabora tutti i valori con ordini crescenti (TO) o decrescenti (DOWNTO)) FLATAFTER DefParam FlatAfter = HHMMSS FLATBEFORE Defparam FlatBefore = HHMMSS Chiude posizioni, cancella ordini in attesa ed impedisce di piazzare ordini supplementari dopo l'orario del giorno specificato (in ore, minuti e secondi) Chiude posizioni, cancella ordini in attesa ed impedisce di piazzare ordini supplementari prima dell'orario del giorno specificato (in ore, minuti e secondi) ForceIndex ForceIndex(price) Indicatore Force Index che determina chi controlla il mercato (compratore o venditore) GRAPH GRAPH myvariable AS "myvariable" Istruzione per visualizzare i valori storici delle variabili di un ProBacktest sui grafici V / 75

71 Glossar io H CODICE IMPLEMENTAZIONE FUNZIONE High High[N] Designa il massimo della barra corrente o quella di n barre precedenti highest highest[n](price) Designa il prezzo massimo di un insieme di barre HistoricVolatility HistoricVolatility[N](price) Designa la volatilità storica o statistica Hour Hour[N] Designa l'ora di chiusura di ogni barra I - J - K CODICE IMPLEMENTAZIONE FUNZIONE IF/THEN/ IF a THEN b Insieme di istruzioni condizionali senza la seconda condizione IF/THEN/ELSE/ IF a THEN b ELSE c Insieme di istruzioni condizionali IntradayBarIndex IntradayBarIndex[N] Conta il numero di candele sul grafico intraday L CODICE IMPLEMENTAZIONE FUNZIONE LIMIT BUY AT x LIMIT Istruzione che introduce un ordine Limite LinearRegression LinearRegression[N](price) Indicatore di regressione lineare LinearRegressionSlope LinearRegressionSlope[N] (price) Inclinazione di regressione lineare LOG LOG(a) Funzione matematica logaritmica LONGONMARKET LONGONMARKET Indica se avete o no delle posizioni di acquisto (=lunghe) sul mercato Low Low[N] Designa il minimo della barra corrente o quella di n barre precedenti lowest lowest[n](price) Designa il minimo di un periodo su un insieme di barre LOSS Set STOP LOSS x Permette di mettere uno stop loss di x unità dal prezzo di entrata della posizione %LOSS SET STOP %LOSS x Permette di mettere uno stop loss di x% dal prezzo di entrata della posizione $LOSS SET STOP $LOSS x Permette di mettere uno stop loss di x, $ (nella valuta dello strumento) LOT BUY 1 LOT Designa il numero di lotti da comprare o vendere (equivalente a "SHARE") V / 75

72 Glossar io M CODICE IMPLEMENTAZIONE FUNZIONE MACD MACD[S,L,Si](price) Moving Average Convergence Divergence (MACD) MACDline MACDLine[S,L](price) Designa la linea del MACD MARKET BUY AT MARKET Designa un ordine al prezzo di mercato MassIndex MassIndex[N] Indicatore Mass Index applicato su N barre MAX MAX(a,b) Funzione matematica "Massimo" MedianPrice MedianPrice Media del prezzo massimo e minimo MIN MIN(a,b) Funzione matematica"minimo" Minute Minute Designa il minuto di ogni barra caricata nel grafico MOD a MOD b Funzione matematica "Resto della divisione" Momentum Momentum[I] Momentum (prezzo di chiusura prezzo della chiusura dell'ennesima barra precedente) MoneyFlow MoneyFlow[N](price) Dà il MoneyFlow tra -1 e 1 MoneyFlowIndex MoneyFlowIndex[N] Designa il MoneyFlowIndex Month Month[N] Designa il mese di chiusura di ogni barra caricata nel grafico N CODICE IMPLEMENTAZIONE FUNZIONE NegativeVolumeIndex NegativeVolumeIndex[N] Indicatore dell'indice di volume negativo NEXT Vedere FOR/TO/NEXT Istruzione da posizionare alla fine del ciclo "FOR" NextBarOpen AT MARKET NextBarOpen Designa un ordine eseguito all'apertura della barra successiva. NOCASHUPDATE DEFPARAM NOCASHUPDATE=true/false Permette di non aggiornare il capitale con i guadagni/perdite (Backtest solamente) NOT Not A Operatore logico NON V / 75

73 Glossar io O CODICE IMPLEMENTAZIONE FUNZIONE OBV OBV(price) Designa l' "On-Balance-Volume" ONCE ONCE VariableName = VariableValue Istruzione che si vuole realizzare una sola volta ONMARKET ONMARKET Indica se una posizione é aperta o no Open Open[N] Designa il prezzo di apertura della barra corrente o quella di n barre precedenti OpenDate OpenDate Data di apertura della barra in corso in formato YYYYMMDD OpenDay OpenDay Giorno di apertura della barra in corso OpenDayOfWeek OpenDayOfWeek Giorno della settimana di apertura della barra in corso OpenHour OpenHour di apertura della barra in corso Ora di apertura della barra in corso nel fuso orario dell'utilizzatore OpenMinute OpenMinute Minuto di apertura della barra in corso nel fuso orario dell'utilizzatore OpenMonth OpenMonth Mese di apertura della barra in corso OpenTime OpenTime Tempo di apertura della barra in corso nel formato HHMMSS nel fuso orario dell'utilizzatore OpenYear OpenYear Anno di apertura della barra in corso OR a OR b Operatore logico O V / 75

74 Glossar io P - Q CODICE IMPLEMENTAZIONE FUNZIONE PIPVALUE PipValue Valore in /$ di un pip (o punto) nella valuta dello strumento. PipValue=Pointvalue PIPSIZE PipSize Grandezza di un pip (o punto), PipSize=PointSize POINTVALUE PointValue Valore in /$ di un pip (o punto) nella valuta dello strumento. PipValue=Pointvalue POINTSIZE PointSize Grandezza di un pip (o punto), PipSize=PointSize POSITIONPERF PositionPerf(n) Indica la percentuale di guadagno o di perdita dell'ennesima posizione chiusa POSITIONPRICE PositionPrice Indica il prezzo medio della posizione in corso PRELOADBARS DEFPARAM PRELOADBARS = 200 Imposta la quantità massima di barre precaricate per il calcolo degli indicatori usati in un sistema di trading PriceOscillator PriceOscillator[S,L](price) Indicatore Percertage Price oscillator PositiveVolumeIndex PriceVolumeIndex(price) Designa l'indicatore Positive Volume Index PVT PVT(price) Designa l'indicatore "Price Volume Trend" QUIT QUIT Istruzione per interrompere un sistema di trading R CODICE IMPLEMENTAZIONE FUNZIONE R2 R2[N](price) Coefficiente della radice quadrata (tasso di errore della regressione lineare sul prezzo) Range Range[N] Calcola il Range (Differenza tra il massimo e il minimo) REM REM comment Introduce un commento (non preso in considerazione nel codice) Repulse Repulse[N](price) Indicatore Repulse (misura la spinta al rialzo e al ribasso di ogni candela) RETURN RETURN Result Istruzione che ritorna il risultato ROC ROC[N](price) Designa il "Price Rate of Change" RSI RSI[N](price) Designa l'oscillatore "Relative Strength Index" ROUND ROUND(a) Funzione matematica "Arrotondamento all'unità" ROUNDEDUP ROUNDEDUP Arrotondamento all'unità superiore delle quantità da comprare o vendere ROUNDEDDOWN ROUNDEDDOWN Arrotondamento all'unità inferiore delle quantità da comprare o vendere V / 75

75 Glossar io S CODICE IMPLEMENTAZIONE FUNZIONE SAR SAR[At,St,Lim] Designa l'indicatore Parabolic SAR SARatdmf SARatdmf[At,St,Lim](price) Designa l'indicatore Smoothed Parabolic SAR SELL SELL x SHARES Istruzione per chiudere una posizione lunga SELLSHORT SELLSHORT x SHARES Istruzione per aprire una posizione corta SET SET Designa il tipo di ordine: limite o stop SHARES BUY x SHARES Designa il numero di azioni da comprare o vendere SHORTONMARKET SHORTONMARKET Indica se ci sono posizioni corte aperte o no SIN SIN(a) Funzione matematica "Seno" SGN SGN(a) Funzione matematica "Segno di" (é positivo o negativo) SMI SMI[N,SS,DS](price) Designa lo Stochastic Momentum Index SmoothedStochastic SmoothedStochastic[N,K] (price) Designa uno Stocastico lisciato SQUARE SQUARE(a) Funzione matematica "Elevazione al quadrato" SQRT SQRT(a) Funzione matematica "Radice quadrata" STD STD[N](price) Funzione statistica "scarto-tipo" STE STE[N](price) Funzione statistica "errore standard" Stochastic Stochastic[N,K](price) Linea %K dello stocastico STOP SET STOP LOSS Istruzione per creare un ordine stop summation summation[n](price) Somma del prezzo delle ultime N candele Supertrend Supertrend[STF,N] Designa il Super Trend V / 75

76 Glossar io T CODICE IMPLEMENTAZIONE FUNZIONE TAN TAN(a) Funzione matematica "Tangente" TARGET SET TARGET PROFIT x Istruzione per impostare un ordine target ad un prezzo x TEMA TEMA[N](price) Media Mobile Esponenziale Tripla THEN Vedere IF/THEN/ELSE/ Istruzione che segue la prima condizione di "IF" TICKSIZE TICKSIZE Dà il ticksize dello strumento (la più piccola variazione di prezzo possibile) Time Time[N] Rappresenta l'orario di ogni barra caricata nel grafico TimeSeriesAverage TimeSeriesAverage[N](price) Serie di medie mobili temporali TO Vedere FOR/TO/NEXT Istruzione direzionale nel ciclo "FOR" Today Today[N] Data della barra di n periodi che precede la barra corrente TomorrowOpen AT MARKET TomorrowOpen Designa un ordine eseguito all'apertura della giornata successiva TotalPrice TotalPrice[N] (Chiusura + Apertura + Massimo + Minimo)/4 TR TR(price) Designa l'indicatore True Range TRADEINDEX TRADEINDEX(n) Indica l'indice della barra sulla quale é stato eseguito l'ultimo ennesimo ordine TRADEPRICE TRADEPRICE(n) Indica il livello del prezzo dell'ultimo ennesimo ordine eseguito TRAILING SET STOP TRAILING x Permette di posizionare un trailing stop di x unità dal prezzo di entrata della posizione %TRAILING SET STOP %TRAILING x Permette di posizionare un trailing stop di x% unità dal prezzo di entrata della posizione $TRAILING SET STOP $TRAILING x Permette di posizionare un trailing stop di x, $ (nella valuta dello strumento) TriangularAverage TriangularAverage[N](price) Media Mobile Triangolare TRIX TRIX[N](price) Tripla Media Mobile Esponenziale Lisciata TypicalPrice TypicalPrice[N] Prezzo Tipico (media dei massimi, minimi e chiusura) V / 75

77 Glossar io U CODICE IMPLEMENTAZIONE FUNZIONE Undefined a = Undefined Per lasciare una variabile indefinita V CODICE IMPLEMENTAZIONE FUNZIONE Variation Variation(price) Differenza tra la chiusura dell'ultima barra e la chiusura della barra corrente in % Volatility Volatility[S, L] Designa la volatilità di Chaikin Volume Volume[N] Designa l'indicatore volume VolumeOscillator VolumeOscillator[S,L] Designa l'oscillatore volume VolumeROC VolumeROC[N] Designa il volume del Rate Of Change W CODICE IMPLEMENTAZIONE FUNZIONE WeightedAverage WeightedAverage[N](price) Designa la Media Mobile Ponderata WeightedClose WeightedClose[N] Media tra il prezzo di chiusura, il massimo e il minimo WEND Vedere WHILE/DO/WEND Istruzione finale del ciclo WHILE WHILE/DO/WEND WHILE (condition) DO (action) WEND Ciclo "WHILE" WilderAverage WilderAverage[N](price) Rappresenta la media mobile di Wilder Williams Williams[N](close) Indicatore %R di Williams WilliamsAccumDistr WilliamsAccumDistr(price) Indicatore Accumulazione/Distribuzione di Williams X CODICE IMPLEMENTAZIONE FUNZIONE XOR a XOR b Operatore logico esclusivo O V / 75

78 Glossar io Y CODICE IMPLEMENTAZIONE FUNZIONE Year Year[N] Anno della barra di n periodi prima della barra corrente Yesterday Yesterday[N] Data del giorno che precede la barra di n periodi prima della barra corrente Z CODICE IMPLEMENTAZIONE FUNZIONE ZigZag ZigZag[Zr](price) Rappresenta l'indicatore Zig-Zag introdotto nella teoria delle onde di Eliott ZigZagPoint ZigZagPoint[Zp](price) Rappresenta l'indicatore Zig-Zag nella teoria delle onde di Eliott calcolata a Zp punti Operatori CODICE FUNZIONE CODICE FUNZIONE + Somma < Strettamente inferiore - Sottrazione > Strettamente superiore * Moltiplicazione <= Inferiore / Divisione >= Superiore = Uguale // Introduce una linea di commenti <> Differenza V / 75

79

SOMMARIO. Introduzione al ProBacktest. Capitolo I: Introduzione

SOMMARIO. Introduzione al ProBacktest. Capitolo I: Introduzione SOMMARIO Introduzione al ProBacktest Capitolo I: Introduzione Accedere a ProBacktest...2 Parametri di ProBacktest...2 Risultati del ProBacktest...11 1) Equity Curve...11 2) Curva delle posizioni...12 3)

Dettagli

MetaTrader 4 Builder

MetaTrader 4 Builder X-Trade Brokers Dom Maklerski S.A. MetaTrader 4 Builder Tutorial 2010-08-05 1/24 Indice Installazione...3 Notifica Legale...8 Impostazioni iniziali/preferenze...8 Lingua...9 Cartella piattaforma...9 Problemi

Dettagli

Secondo l impostazione della figura precedente a partire dall alto e da sinistra a destra, sono presenti:

Secondo l impostazione della figura precedente a partire dall alto e da sinistra a destra, sono presenti: La Metatrader4 Molti broker hanno scelto di utilizzare la piattaforma Trading Platform Meta Trader 4 che è stata realizzata dalla MetaQuotes Software Corporation, sicuramente una tra le piattaforme più

Dettagli

Lo Schaff indicator. Fabio Pacchioni ed Enrico Malverti Fabio.paccioni@gmail.com Info@enricomalverti.com

Lo Schaff indicator. Fabio Pacchioni ed Enrico Malverti Fabio.paccioni@gmail.com Info@enricomalverti.com Lo Schaff indicator Fabio Pacchioni ed Enrico Malverti Fabio.paccioni@gmail.com Info@enricomalverti.com Lo Schaff Trend Cycle Indicator (STC) è il prodotto della combinazione di uno stocastico lento con

Dettagli

www.sapienzafinanziaria.com la formazione finanziaria è il miglior investimento per il tuo domani

www.sapienzafinanziaria.com la formazione finanziaria è il miglior investimento per il tuo domani www.sapienzafinanziaria.com la formazione finanziaria è il miglior investimento per il tuo domani Coaching 1 Edizione marzo / luglio 2015 Istruzioni EA WIZARD Una strategia base www.sapienzafinanziaria.com

Dettagli

Metodo Past Regression Deviated Di Robert Hill

Metodo Past Regression Deviated Di Robert Hill Metodo Past Regression Deviated Di Robert Hill Il metodo Past Regression Deviated è una strategia che si sviluppa dal metodo Jaimo, detto anche metodo Hoover, di Robert L. Royce. Quel metodo usava un canale

Dettagli

SERVIZIO "FUTURES SWING TRADING"

SERVIZIO FUTURES SWING TRADING SERVIZIO "FUTURES SWING TRADING" by Team Sviluppo Sistemi Algoritmica.pro Srl Il servizio "Futures Swing Trading" è a cura del "Team Sviluppo Sistemi" di Algoritmica.pro Srl, una società attiva nello sviluppo,

Dettagli

Guida alla piattaforma AVA Metatrader 4

Guida alla piattaforma AVA Metatrader 4 Guida alla piattaforma AVA Metatrader 4 Guida alla piattaforma MetaTrader 4 AVA MT4 REAL http://www.avatrade.it/join-ava/real-account?tradingplatform=2&dealtype=1&mtsrv=mt2&tag=55163&tag2=~profile_default

Dettagli

WHS opzioni FX. La guida per iniziare con le opzioni FX. Predire il trend dei mercati valutari e coprire le posizioni con le opzioni FX.

WHS opzioni FX. La guida per iniziare con le opzioni FX. Predire il trend dei mercati valutari e coprire le posizioni con le opzioni FX. La guida per iniziare con le opzioni FX WHS opzioni FX Predire il trend dei mercati valutari e coprire le posizioni con le opzioni FX. Affina il tuo stile di trading e la visione dei mercati. Impara ad

Dettagli

WHS FutureStation. Manuale di avvio rapido

WHS FutureStation. Manuale di avvio rapido WHS FutureStation Manuale di avvio rapido Copyright : Tutti i diritti d autore applicabili a questa guida sono di proprietà esclusiva di WH Selfinvest SA. Sono vietati la riproduzione anche parziale del

Dettagli

MetaTrader per iphone. Guida per l utente

MetaTrader per iphone. Guida per l utente MetaTrader per iphone Guida per l utente Contenuto Come ottenere MT4/5 App per iphone and ipad... 3 Come accedere al vostro Conto Esistente oppure creare un nuovo conto Demo... 3 1. Scheda Quote... 4 a.

Dettagli

GUIDA E STRATEGIE DI TRADING SULLE OPZIONI BINARIE

GUIDA E STRATEGIE DI TRADING SULLE OPZIONI BINARIE Titolo GUIDA E STRATEGIE DI TRADING SULLE OPZIONI BINARIE Autore Dove Investire Sito internet http://www.doveinvestire.com Broker consigliato http://www.24option.com/it ATTENZIONE: tutti i diritti sono

Dettagli

SEMPLICE STRATEGIA DI INVESTIMENTO SUL FOREX

SEMPLICE STRATEGIA DI INVESTIMENTO SUL FOREX Titolo SEMPLICE STRATEGIA DI INVESTIMENTO SUL FOREX Autore Dove Investire Sito internet http://www.doveinvestire.com ATTENZIONE: tutti i diritti sono riservati a norma di legge. Le strategie riportate

Dettagli

GUIDA RAPIDA DIRECT ACCESS

GUIDA RAPIDA DIRECT ACCESS GUIDA RAPIDA DIRECT ACCESS INDICE CHE COS È DIRECT ACCESS. COME COLLEGARSI CONFIGURAZIONE: OPZIONI DI TRADING VEDERE GLI ORDINI 1. Etichetta verde Accesso al Broker" 2. Informazione grafica INVIARE, MODIFICARE

Dettagli

Manuale dell utente MetaTrader 4 TraderNovo:

Manuale dell utente MetaTrader 4 TraderNovo: Manuale dell utente MetaTrader 4 TraderNovo: Ecco una foto che mostra la schermata principale della MT4: Menu principale (accesso al menu e alle impostazioni del programma); Barre degli strumenti (accesso

Dettagli

ITCharts Advanced. Manuale

ITCharts Advanced. Manuale ITCharts Advanced Manuale Sommario Introduzione...2 Esempi di personalizzazione...2 Strumenti di disegno...11 Modo Cursore (Predefinito)...11 Creare un'allarme...11 Zoom sul grafico...11 Tracciare un segmento

Dettagli

SERVIZIO "BRUNCH FTSE MIB"

SERVIZIO BRUNCH FTSE MIB SERVIZIO "BRUNCH FTSE MIB" by Team Sviluppo Sistemi Algoritmica.pro Srl Il servizio "Brunch Ftse Mib" è a cura del "Team Sviluppo Sistemi" di Algoritmica.pro Srl, una società attiva nello sviluppo, programmazione,

Dettagli

LA MARGINAZIONE INTRADAY

LA MARGINAZIONE INTRADAY LA MARGINAZIONE INTRADAY 1. Cosa è la marginazione long/short intraday? Si tratta di una strategia di investimento che offre l opportunità di sfruttare anche le minime oscillazioni di mercato. Grazie all

Dettagli

Introduzione... 2. Commercio di margine... 3. Tipi di Ordini/Richieste... 4. Invio ed esecuzione degli ordini di mercato... 6. Ordini in attesa...

Introduzione... 2. Commercio di margine... 3. Tipi di Ordini/Richieste... 4. Invio ed esecuzione degli ordini di mercato... 6. Ordini in attesa... Indice Introduzione... 2 Commercio di margine... 3 Tipi di Ordini/Richieste... 4 Invio ed esecuzione degli ordini di mercato... 6 Ordini in attesa... 8 Dare gli ordini al telefono... 11 Autorizzazione

Dettagli

Il trading automatico con WIMSERVER. Ing. Giuseppe Belfiori. www.ftsupport.it - info@ftsupport.it - 0289452666

Il trading automatico con WIMSERVER. Ing. Giuseppe Belfiori. www.ftsupport.it - info@ftsupport.it - 0289452666 Il trading automatico con WIMSERVER Ing. Giuseppe Belfiori 1 IL TRADING AUTOMATICO Il processo decisionale del trader discrezionale News Prezzi Buy Sell Sell Buy 2 IL TRADING AUTOMATICO Il processo decisionale

Dettagli

Manuale di SmartLines

Manuale di SmartLines Manuale di SmartLines E-mail: italiandesk@activtrades.com Live Chat: www.activtrades.it Telefono: +39-02-92958617 Fax: +44 (0)207 680 7301 1 Panoramica Utilizza le Trendline nei grafici per usufruire di

Dettagli

Uso di un browser (con riferimento a Microsoft Internet Explorer 7.0)

Uso di un browser (con riferimento a Microsoft Internet Explorer 7.0) Uso di un browser (con riferimento a Microsoft Internet Explorer 7.0) Nota Bene: Si raccomanda di leggere queste dispense di fronte al computer, provando passo dopo passo le funzionalità descritte. Per

Dettagli

XTRADE CFD TRADING ONLINE

XTRADE CFD TRADING ONLINE XTRADE CFD TRADING ONLINE 1. Introduzione SCHEDA RIEPILOGATIVA POLITICA DI ESECUZIONE DEGLI ORDINI E MIGLIOR INTERESSE Questa scheda riepilogativa della Politica di Esecuzione Ordini e Miglior Interesse

Dettagli

GUIDA ALLA MARGINAZIONE INTRADAY SU T3

GUIDA ALLA MARGINAZIONE INTRADAY SU T3 GUIDA ALLA MARGINAZIONE INTRADAY SU T3 Luglio 2014 LA MARGINAZIONE INTRADAY SU T3 1. Cosa è la marginazione long/short intraday? Si tratta di una strategia di investimento che offre l opportunità di sfruttare

Dettagli

SEGNALI DAX INTRADAY

SEGNALI DAX INTRADAY SEGNALI DAX INTRADAY VIDEO SHARING Questo documento vuole essere uno strumento utile per avere informazioni dettagliate sul servizio Segnali Dax Intraday attraverso il Video Sharing, in particolare per

Dettagli

Sommario. La finestra Matrix... 1 Inserimento degli ordini con la Quick Trade Bar... 5

Sommario. La finestra Matrix... 1 Inserimento degli ordini con la Quick Trade Bar... 5 Inserimento degli ordini con i vari strumenti di Sommario immissione La finestra Matrix..... 1 Inserimento degli ordini con la Quick Trade Bar... 5 Geografia della finestra Matrix... 2 Inserimento degli

Dettagli

Sintesi della Policy di Esecuzione degli Ordini per i CFD

Sintesi della Policy di Esecuzione degli Ordini per i CFD CMC MARKETS UK PLC Sintesi della Policy di Esecuzione degli Ordini per i CFD Gennaio 2015 Iscritta nel Registro delle Imprese in Inghilterra al numero: 02448409 Autorizzata e vigilata dalla Financial Conduct

Dettagli

SEMPLICE STRATEGIA SULLE OPZIONI BINARIE

SEMPLICE STRATEGIA SULLE OPZIONI BINARIE Titolo SEMPLICE STRATEGIA SULLE OPZIONI BINARIE Autore Dove Investire Sito internet http://www.doveinvestire.com Broker consigliato http://www.24option.com/it ATTENZIONE: tutti i diritti sono riservati

Dettagli

BARSTICKS PATTERNS PRICE ACTION METHOD (James16 Method)

BARSTICKS PATTERNS PRICE ACTION METHOD (James16 Method) BARSTICKS PATTERNS PRICE ACTION METHOD (James16 Method) Autore: Dimitry - demighty@libero.it 1) Two Consecutive Matching Lows Il pattern Two Consecutive Matching Lows è un pattern di continuazione-breakout

Dettagli

SOMMARIO. Presentazione del ProBuilder. Capitolo 1: Le nozioni fondamentali

SOMMARIO. Presentazione del ProBuilder. Capitolo 1: Le nozioni fondamentali SOMMARIO Presentazione del ProBuilder Capitolo 1: Le nozioni fondamentali Usare ProBuilder... 2 Supporto veloce per la creazione di indicatori...2 Scorciatoie di tastiera nella finestra di programmazione...5

Dettagli

MetaTrader 4. Guida di

MetaTrader 4. Guida di MetaTrader 4 Guida di INDICE Download di MetaTrader 4 3 Primo accesso MetaTrader 4 7 Accedere a MetaTrader 4 7 Modifica della lingua 8 Modifica della password 9 Password dimenticata 9 Negoziare con MetaTrader

Dettagli

MANUALE OPERATIVO EXCEL 2003

MANUALE OPERATIVO EXCEL 2003 1. Novità di Excel 2003 MANUALE OPERATIVO EXCEL 2003 CAPITOLO 1 Microsoft Office Excel 2003 ha introdotto alcune novità ed ha apportato miglioramenti ad alcune funzioni già esistenti nelle precedenti versioni

Dettagli

Lezione 11 Introduzione a EasyLanguage

Lezione 11 Introduzione a EasyLanguage Sommario Descrizione di EasyLanguage 1 Input... 6 Vantaggi offerti dall'apprendimento di Referenziamento dei dati dalle barre 1 EasyLanguage... precedenti.. 6 Dati di mercato disponibili 1 Utilizzo delle

Dettagli

GUIDA AL CHART TRADING

GUIDA AL CHART TRADING GUIDA AL CHART TRADING 1. Il Chart Trading Webank offre ai propri clienti la possibilità di immettere, modificare e cancellare sia ordini normali che ordini condizionati con un semplice click dal grafico,

Dettagli

Programma MANUTENZIONE

Programma MANUTENZIONE Programma MANUTENZIONE MANUALE UTENTE @caloisoft Programma MANUTENZIONE 1 IL PROGRAMMA MANUTENZIONE Il programma dispone di una procedura automatica di installazione. INSTALLAZIONE Per installare il programma

Dettagli

Esercitazione. Fig. B.1 L ambiente di lavoro Exel

Esercitazione. Fig. B.1 L ambiente di lavoro Exel Esercitazione Exel: il foglio di lavoro B.1 Introduzione Exel è un applicazione che serve per la gestione dei fogli di calcolo. Questo programma fa parte del pacchetto OFFICE. Le applicazioni di Office

Dettagli

Quando comprare o vendere?

Quando comprare o vendere? 1 Quando comprare o vendere? L essenza di investire in contratti per differenza (CFD) è trarre profitto dalla differenza tra il tasso iniziale della transazione finanziaria e il tasso di cambio al momento

Dettagli

Uso di trigger di script in FileMaker Pro

Uso di trigger di script in FileMaker Pro Uso di trigger di script in FileMaker Pro Sommario Info su questo bollettino tecnico... 4 Che cos'è un trigger di script?... 4 Quali trigger di script sono supportati da FileMaker Pro?... 5 Panoramica

Dettagli

A D D. A d v a n c e d D a t a D o w n l o a d. software

A D D. A d v a n c e d D a t a D o w n l o a d. software A D D A d v a n c e d D a t a D o w n l o a d software 1 INFORMAZIONI GENERALI Add è un software creato per la gestione dei dati di borsa dei più importanti mercati del mondo. Scarica gratuitamente tali

Dettagli

MetaTrader 4/5 per Android. Guida per l utente

MetaTrader 4/5 per Android. Guida per l utente 1 MetaTrader 4/5 per Android Guida per l utente 2 Contenuto Come ottenere il MT4/5 App per Android... 3 Come accedere al vostro Conto Esistente oppure creare un nuovo conto Demo... 3 1. Scheda Quotes...

Dettagli

Benvenuti al libro elettronico sul FOREX

Benvenuti al libro elettronico sul FOREX Benvenuti al libro elettronico sul FOREX Indice 1. Riguardo al MARCHIO... 2 2. Piattaforme di Trading... 3 3. Su cosa si Opera nel Mercato Forex?... 4 4. Cos è il Forex?... 4 5. Vantaggi del Mercato Forex...

Dettagli

Funzioni di base. Manualino OE6. Outlook Express 6

Funzioni di base. Manualino OE6. Outlook Express 6 Manualino OE6 Microsoft Outlook Express 6 Outlook Express 6 è un programma, incluso nel browser di Microsoft Internet Explorer, che ci permette di inviare e ricevere messaggi di posta elettronica. È gratuito,

Dettagli

POLITECNICO DI BARI Corso di Laurea in Ingegneria MECCANICA Corso di FONDAMENTI DI INFORMATICA

POLITECNICO DI BARI Corso di Laurea in Ingegneria MECCANICA Corso di FONDAMENTI DI INFORMATICA POLITECNICO DI BARI Corso di Laurea in Ingegneria MECCANICA Corso di FONDAMENTI DI INFORMATICA ACCESSO ALL AMBIENTE DI PROGRAMMAZIONE Microsoft Visual C++ è sufficiente cliccare sul pulsante di Windows,

Dettagli

FOREX TRADING PER PRINCIPIANTI

FOREX TRADING PER PRINCIPIANTI FOREX TRADING PER PRINCIPIANTI GUIDA COMPLETA LA BIBBIA DEL FOREX Autore David Ruscelli www.forexstrategico.com Copyright 2014 David Ruscelli Proprietà letteraria riservata ISBN: 1497581613 ISBN-13: 978-1497581616

Dettagli

il foglio elettronico

il foglio elettronico 1 il foglio elettronico ecdl - modulo 4 toniorollo 2013 il modulo richiede 1/2 comprendere il concetto di foglio elettronico e dimostri di sapere usare il programma di foglio elettronico per produrre dei

Dettagli

Visual Trader Realtime

Visual Trader Realtime Visual Trader Realtime Visual Trader, il tradizionale sistema esperto di analisi tecnica, e' stato rinnovato e ristrutturato, per rendere più flessibile, facile e veloce il tuo trading. Tutto nella stessa

Dettagli

Come tradare i segnali di Vivere di Forex. Maurizio Monti spiega agli abbonati le regole da seguire per i segnali di Vivere di Forex.

Come tradare i segnali di Vivere di Forex. Maurizio Monti spiega agli abbonati le regole da seguire per i segnali di Vivere di Forex. Versione 01.04 31.10.2011 Come tradare i segnali di Vivere di Forex Maurizio Monti spiega agli abbonati le regole da seguire per i segnali di Vivere di Forex. Premessa Cari Abbonati, Vivere di Forex pubblica

Dettagli

Foglio elettronico. Foglio elettronico EXCEL. Utilizzo. Contenuto della cella. Vantaggi EXCEL. Prof. Francesco Procida procida.francesco@virgilio.

Foglio elettronico. Foglio elettronico EXCEL. Utilizzo. Contenuto della cella. Vantaggi EXCEL. Prof. Francesco Procida procida.francesco@virgilio. Foglio elettronico Foglio elettronico EXCEL Prof. Francesco Procida procida.francesco@virgilio.it Il foglio elettronico è un programma interattivo, che mette a disposizione dell utente una matrice di righe

Dettagli

GUIDA ALLA MARGINAZIONE SUI DERIVATI

GUIDA ALLA MARGINAZIONE SUI DERIVATI GUIDA ALLA MARGINAZIONE SUI DERIVATI LA MARGINAZIONE INTRADAY SUI DERIVATI 1. La marginazione long/short intraday sui derivati Con la marginazione intraday sui derivati, Webank offre l opportunità ai propri

Dettagli

Foglio elettronico (StarOffice)

Foglio elettronico (StarOffice) Modulo Foglio elettronico (StarOffice) Modulo - Foglio elettronico, richiede che il candidato comprenda il concetto di foglio elettronico e dimostri di sapere usare il programma corrispondente. Deve comprendere

Dettagli

TRADING SYSTEM N.08 MAGIC BREAKOUT

TRADING SYSTEM N.08 MAGIC BREAKOUT TRADING SYSTEM N.08 MAGIC BREAKOUT 1.1 Introduzione Il MagicBreakout è un trading system che si propone di anticipare le accelerazioni di prezzo di un cross valutario cercando però di limitare al minimo

Dettagli

MICROSOFT WORD INTRODUZIONE

MICROSOFT WORD INTRODUZIONE 1 MICROSOFT WORD INTRODUZIONE Word è il programma più diffuso per elaborazione di testi, il cui scopo fondamentale è assistere l utente nelle operazioni di digitazione, revisione e formattazione di testi.

Dettagli

MetaTrader 5 per ipad. Manuale utente

MetaTrader 5 per ipad. Manuale utente MetaTrader 5 per ipad Manuale utente Indice MetaTrader 5 per ipad Manuale utente... 3 Trading... 3 Analisi tecnica... 3 Facilità di utilizzo... 3 1. Come scaricare MT5 per ipad... 4 1.1 Come collegare

Dettagli

per immagini guida avanzata Usare le formule e le funzioni Geometra Luigi Amato Guida Avanzata per immagini excel 2000 1

per immagini guida avanzata Usare le formule e le funzioni Geometra Luigi Amato Guida Avanzata per immagini excel 2000 1 Usare le formule e le funzioni Geometra Luigi Amato Guida Avanzata per immagini excel 2000 1 Costruire formule in Excel Per gli utenti di altri programmi di foglio di calcolo, come ad esempio Lotus 1-2-3,

Dettagli

Struttura logica di un programma

Struttura logica di un programma Struttura logica di un programma Tutti i programmi per computer prevedono tre operazioni principali: l input di dati (cioè l inserimento delle informazioni da elaborare) il calcolo dei risultati cercati

Dettagli

REGOLAMENTO TOP TRUMPS CELEBS

REGOLAMENTO TOP TRUMPS CELEBS REGOLAMENTO TOP TRUMPS CELEBS Slot machine a 5 rulli e 20 linee Lo scopo del gioco Top Trumps Celebs è ottenere una combinazione vincente di simboli dopo la rotazione dei rulli. Per giocare: Il valore

Dettagli

Nuovo WEB-CAT Manuale utente Nuovo WEB-CAT Manuale utente

Nuovo WEB-CAT Manuale utente Nuovo WEB-CAT Manuale utente Nuovo WEB-CAT Manuale utente Pagina 1 di 15 Indice Introduzione... 3 Configurazioni necessarie... 4 Navigazione e consultazione documenti... 5 Ricerche... 7 E-commerce Dati personali... 8 Creazione ordine

Dettagli

GUIDA RAPIDA ALL USO DI EXCEL

GUIDA RAPIDA ALL USO DI EXCEL GUIDA RAPIDA ALL USO DI EXCEL I fogli elettronici vengono utilizzati in moltissimi settori, per applicazioni di tipo economico, finanziario, scientifico, ingegneristico e sono chiamati in vari modi : fogli

Dettagli

REGOLE DI ESECUZIONE DELLE ISTRUZIONI

REGOLE DI ESECUZIONE DELLE ISTRUZIONI REGOLE DI ESECUZIONE DELLE ISTRUZIONI I. Disposizioni generali 1. Le presenti Regole di esecuzione delle istruzioni dei clienti riguardanti i contratti di compensazione delle differenze (CFD) e gli strumenti

Dettagli

Strategie. Gap Trading efficace sui mercati valutari TRADARE CON PRECISIONE FOLLE

Strategie. Gap Trading efficace sui mercati valutari TRADARE CON PRECISIONE FOLLE Strategie Gap Trading efficace sui mercati valutari TRADARE CON PRECISIONE FOLLE Ci sono molti gap trader professionali nei mercati finanziari. Anche se sono già stati scritti molti articoli sul gap trading,

Dettagli

Strumenti derivati. Strumenti finanziari il cui valore dipende dall andamento del prezzo di un attività sottostante Attività sottostanti:

Strumenti derivati. Strumenti finanziari il cui valore dipende dall andamento del prezzo di un attività sottostante Attività sottostanti: Strumenti derivati Strumenti finanziari il cui valore dipende dall andamento del prezzo di un attività sottostante Attività sottostanti: attività finanziarie (tassi d interesse, indici azionari, valute,

Dettagli

WORD (livello avanzato): Struttura di un Documento Complesso. Struttura di un Documento Complesso

WORD (livello avanzato): Struttura di un Documento Complesso. Struttura di un Documento Complesso Parte 5 Adv WORD (livello avanzato): Struttura di un Documento Complesso 1 di 30 Struttura di un Documento Complesso La realizzazione di un libro, di un documento tecnico o scientifico complesso, presenta

Dettagli

Uso di un browser (con riferimento a Microsoft Internet Explorer 6.0)

Uso di un browser (con riferimento a Microsoft Internet Explorer 6.0) Uso di un browser (con riferimento a Microsoft Internet Explorer 6.0) Nota Bene: Si raccomanda di leggere queste dispense di fronte al computer, provando passo dopo passo le funzionalità descritte. Per

Dettagli

Impress è il programma per la creazione di presentazioni della suite OpenOffice.org.

Impress è il programma per la creazione di presentazioni della suite OpenOffice.org. Impress è il programma per la creazione di presentazioni della suite OpenOffice.org. Barra dei menu Menu degli strumenti standard Vista diapositive Pannello delle attività Menu degli strumenti di presentazione

Dettagli

MetaTrader 4 per ipad. Manuale utente

MetaTrader 4 per ipad. Manuale utente MetaTrader 4 per ipad Manuale utente Indice MetaTrader 4 per ipad Manuale utente... 3 Trading... 3 Analisi tecnica... 3 Facilità di utilizzo... 3 1. Come scaricare MT4 per ipad... 4 1.1 Come collegare

Dettagli

Manuale del Trader. Benvenuti nel fantastico mondo del trading binario!

Manuale del Trader. Benvenuti nel fantastico mondo del trading binario! Manuale del Trader Benvenuti nel fantastico mondo del trading binario! Questo manuale spiega esattamente cosa sono le opzioni binarie, come investire e familiarizzare con il nostro sito web. Se avete delle

Dettagli

X-Trade Brokers. Strategie per XTB Expert Builder

X-Trade Brokers. Strategie per XTB Expert Builder X-Trade Brokers Strategie per XTB Expert Builder Indice Aprire esempi di strategie.....3 Strategie...5 Media Mobile (MA.xtb)....5 Media Mobile (MA_Cross.xtb)...5 RSI (RSI_positions_in_canal.xtb)... 6 RSI

Dettagli

Capitale raccomandato

Capitale raccomandato Aggiornato in data 1/9/212 Advanced 1-212 Capitale raccomandato da 43.8 a 6.298 Descrizioni e specifiche: 1. E' una combinazione composta da 3 Trading System automatici 2. Viene consigliata per diversificare

Dettagli

Il Supporto è il livello di ingresso per aprire una posizione long (acquisto dello strumento finanziario a quel prezzo).

Il Supporto è il livello di ingresso per aprire una posizione long (acquisto dello strumento finanziario a quel prezzo). Guida ai segnali operativi Il Supporto è il livello di ingresso per aprire una posizione long (acquisto dello strumento finanziario a quel prezzo). La Resistenza è il livello di ingresso per aprire una

Dettagli

Capitale raccomandato

Capitale raccomandato Aggiornato in data 1/9/212 Winner 2-212 Capitale raccomandato da 94.4 a 15.425 Descrizioni e specifiche: 1. E' una combinazione composta da 6 Trading System automatici 2. Viene consigliata per diversificare

Dettagli

Capitale raccomandato

Capitale raccomandato Aggiornato in data 1/9/212 Winner 1-212 Capitale raccomandato da 64.6 a 84.5 Descrizioni e specifiche: 1. E' una combinazione composta da 5 Trading System automatici 2. Viene consigliata per diversificare

Dettagli

Capitale raccomandato

Capitale raccomandato Aggiornato in data 1/9/212 Champion 1-212 Capitale raccomandato da 116.4 a 125.911 Descrizioni e specifiche: 1. E' una combinazione composta da 8 Trading System automatici 2. Viene consigliata per diversificare

Dettagli

GESTIONE EDICOLA MANUALE UTENTE. @caloisoft GESTIONE EDICOLA 03.02 1. Software gestione carico / scarico / resi. Con lettore di codice a barre

GESTIONE EDICOLA MANUALE UTENTE. @caloisoft GESTIONE EDICOLA 03.02 1. Software gestione carico / scarico / resi. Con lettore di codice a barre GESTIONE EDICOLA Software gestione carico / scarico / resi Con lettore di codice a barre MANUALE UTENTE @caloisoft GESTIONE EDICOLA 03.02 1 Introduzione Si tratta di un programma per la gestione di una

Dettagli

Lezione 4 Introduzione a Microsoft Excel Parte Prima

Lezione 4 Introduzione a Microsoft Excel Parte Prima Lezione 4 Introduzione a Microsoft Excel Parte Prima Cenni preliminari... 1 Elementi sullo schermo... 2 Creazione di una cartella di lavoro... 3 Utilizzo di celle e intervalli... 3 Gestione della cartella

Dettagli

3.3 Formattazione. Formattare un testo. Copyright 2008 Apogeo. Formattazione del carattere

3.3 Formattazione. Formattare un testo. Copyright 2008 Apogeo. Formattazione del carattere 3.3 Formattazione Formattare un testo Modificare la formattazione del carattere Cambiare il font di un testo selezionato Modificare la dimensione e il tipo di carattere Formattazione del carattere In Word,

Dettagli

MODULO 3 Foglio elettronico

MODULO 3 Foglio elettronico MODULO 3 Foglio elettronico I contenuti del modulo: Questo modulo verifica la comprensione da parte del corsista dei concetti fondamentali del foglio elettronico e la sua capacità di applicare praticamente

Dettagli

CMC MARKETS UK PLC. Avvertenza sui rischi dei CFD. Gennaio 2015. Iscritta nel Registro delle Imprese in Inghilterra al numero: 02448409

CMC MARKETS UK PLC. Avvertenza sui rischi dei CFD. Gennaio 2015. Iscritta nel Registro delle Imprese in Inghilterra al numero: 02448409 CMC MARKETS UK PLC Avvertenza sui rischi dei CFD Gennaio 2015 Iscritta nel Registro delle Imprese in Inghilterra al numero: 02448409 Autorizzata e vigilata dalla Financial Conduct Authority. Numero di

Dettagli

Il foglio elettronico

Il foglio elettronico Il foglio elettronico Foglio di calcolo, Spreadsheet in inglese, Permette di elaborare DATI NUMERICI. E una TABELLA che contiene numeri che possono essere elaborati con FUNZIONI matematiche e statistiche.

Dettagli

Modulo 4.2 Fogli di calcolo elettronico

Modulo 4.2 Fogli di calcolo elettronico Modulo 4.2 Fogli di calcolo elettronico 1 Finestra principale di Excel 2 Finestra principale di Excel Questi pulsanti servono per ridurre ad icona, ripristinare e chiudere la finestra dell applicazione.

Dettagli

introduzione a SUITEMAIL

introduzione a SUITEMAIL formazione SUITEMAIL introduzione a SUITEMAIL Raggiungi tutti i tuoi clienti in un solo click: Network Service ti aiuta a massimizzare i tuoi profitti delle tue campagne di mail marketing! Anche le e-mail,

Dettagli

LIVE TRADING. 09/10/2015 Milano

LIVE TRADING. 09/10/2015 Milano LIVE TRADING 09/10/2015 Milano Contatti 2 www.cminvesting.com www.shortandlongtrading.com matteo.maggioni@cminvesting.com alessandro.delorenzo@gmail.com Indice 3 1. Mercati & Trading (Matteo Maggioni)

Dettagli

MEGA Process. Manuale introduttivo

MEGA Process. Manuale introduttivo MEGA Process Manuale introduttivo MEGA 2009 SP4 1ª edizione (giugno 2010) Le informazioni contenute nel presente documento possono essere modificate senza preavviso e non costituiscono in alcun modo un

Dettagli

CORSO PRATICO WinWord

CORSO PRATICO WinWord CORSO PRATICO WinWord AUTORE: Renato Avato 1. Strumenti Principali di Word Il piano di lavoro di Word comprende: La Barra del Titolo, dove sono posizionate le icone di ridimensionamento: riduci finestra

Dettagli

Capitale raccomandato

Capitale raccomandato Aggiornato in data 1/9/212 Champion 2-212 Capitale raccomandato da 193. a 21.79 Descrizioni e specifiche: 1. E' una combinazione composta da 15 Trading System automatici 2. Viene consigliata per diversificare

Dettagli

Operare in Spread: dal Mercato Valutario, ai Futures sulle Commodities Luca Giusti www.qtlab.ch

Operare in Spread: dal Mercato Valutario, ai Futures sulle Commodities Luca Giusti www.qtlab.ch Operare in Spread: dal Mercato Valutario, ai Futures sulle Commodities Luca Giusti www.qtlab.ch 1 Il Mercato Valutario Regolamentato o Non Regolamentato ci sono vantaggi ad operare sul Forex? 2 Ci sono

Dettagli

GUIDA OPERATIVA AL SERVIZIO IW SUPERSCALPER

GUIDA OPERATIVA AL SERVIZIO IW SUPERSCALPER GUIDA OPERATIVA AL SERVIZIO IW SUPERSCALPER INDICE 1 INTRODUZIONE... 1 1.1 Attivazione... 2 2 ADEGUAMENTO AUTOMATICO DEI MARGINI OVERNIGHT... 4 3 MARGIN CALL PER EROSIONE MARGINI... 5 4 MARGIN CALL PER

Dettagli

HORIZON SQL CARTELLA ANAGRAFICA

HORIZON SQL CARTELLA ANAGRAFICA 1-1/12 HORIZON SQL CARTELLA ANAGRAFICA 1 INTRODUZIONE... 1-2 Considerazioni generali... 1-2 2 FUNZIONI SULLE ANAGRAFICHE... 2-3 Nuova Anagrafica... 2-3 Scelta del file... 2-3 Controllo Omonimia... 2-4

Dettagli

Dalle strategie direzionali allo Spread Trading. Milano 1 Dicembre 2007

Dalle strategie direzionali allo Spread Trading. Milano 1 Dicembre 2007 Dalle strategie direzionali allo Spread Trading Milano 1 Dicembre 2007 Disclaimer/Note Legali Le opinioni espresse in questa presentazione e seminario non intendono in alcun modo costituire un invito a

Dettagli

Plus500CY Ltd. Politica di esecuzione degli ordini

Plus500CY Ltd. Politica di esecuzione degli ordini Plus500CY Ltd. Politica di esecuzione degli ordini Politica di esecuzione degli ordini La presente Politica di esecuzione degli ordini rientra negli accordi con il cliente come definito nel Contratto con

Dettagli

USO DI EXCEL COME DATABASE

USO DI EXCEL COME DATABASE USO DI EXCEL COME DATABASE Le funzionalità di calcolo intrinseche di un foglio di lavoro ne fanno uno strumento eccellente per registrarvi pochi dati essenziali, elaborarli con formule di vario tipo e

Dettagli

GUIDA OPERATIVA AL SERVIZIO IW SUPERDERIVATI

GUIDA OPERATIVA AL SERVIZIO IW SUPERDERIVATI GUIDA OPERATIVA AL SERVIZIO IW SUPERDERIVATI INDICE 1 INTRODUZIONE... 1 1.1 Attivazione... 2 2 ADEGUAMENTO AUTOMATICO DEI MARGINI OVERNIGHT... 3 3 MARGIN CALL PER EROSIONE MARGINI... 4 4 NOVITA SULLA PIATTAFORMA

Dettagli

Word Libre Office. Barra degli strumenti standard Area di testo Barra di formattazione

Word Libre Office. Barra degli strumenti standard Area di testo Barra di formattazione SK 1 Word Libre Office Se sul video non compare la barra degli strumenti di formattazione o la barra standard Aprite il menu Visualizza Barre degli strumenti e selezionate le barre che volete visualizzare

Dettagli

Guida alla Marginazione Intraday su T3 1 GUIDA ALLA MARGINAZIONE SU T3

Guida alla Marginazione Intraday su T3 1 GUIDA ALLA MARGINAZIONE SU T3 Guida alla Marginazione Intraday su T3 1 GUIDA ALLA MARGINAZIONE SU T3 LA MARGINAZIONE INTRADAY SU T3 1. Cosa è la marginazione long/short intraday? Si tratta di una strategia di investimento che offre

Dettagli

Strumenti per lo sviluppo del software

Strumenti per lo sviluppo del software Lo sviluppo del software Strumenti per lo sviluppo del software Lo sviluppo del software è l attività centrale del progetto e ha lo scopo di produrre il codice sorgente che, una volta compilato e messo

Dettagli

MetaTrader 4 per iphone. Manuale utente

MetaTrader 4 per iphone. Manuale utente MetaTrader 4 per iphone Manuale utente Indice MetaTrader 4 per iphone Manuale utente... 3 Trading... 3 Analisi tecnica... 3 Facilità di utilizzo... 3 1. Come scaricare l app MT4 per iphone... 4 1.1 Come

Dettagli

Excel Lezione 02. Foglio elettronico. Parte seconda

Excel Lezione 02. Foglio elettronico. Parte seconda Excel Lezione 02 Foglio elettronico Parte seconda (Per andare direttamente su un argomento, fare clic con il mouse sul titolo nell indice sottostante) 1.0 Trovare e sostituire 1.1 Usare il comando trova

Dettagli

Apros s.r.l. è lieta di presentarvi

Apros s.r.l. è lieta di presentarvi Apros s.r.l. è lieta di presentarvi Apros Configurator è uno strumento facile ed intuitivo nel suo utilizzo, che vi permetterà di realizzare in breve tempo il dimensionamento di canne fumarie e renderà

Dettagli

Manuale utente GRAPHIC TOOL PRO (GT PRO) PER IW QUICK TRADE

Manuale utente GRAPHIC TOOL PRO (GT PRO) PER IW QUICK TRADE Sommario 1 INTRODUZIONE... 2 1.1 NOVITA. FUNZIONE CONFRONTA... 2 1.2 ESEMPI DI PERSONALIZZAZIONE... 3 1.2.1 Creazione di grafici... 3 1.2.2 Creazione di una curva che collega le chiusure alle candele giapponesi:...

Dettagli