Buongiorno a tutti. Sono nuovo, del forum e nuovo per quanto riguarda il trading automatico. Sto cercando di rendere in codice qualche tecnica che mi sono studiato. Ovviamente sono praticamente a zero di codici e l’ho fatto con il tutor e con un po’ di intuizione. In backtest mi danno buoni risultati… ma vorrei cercare di ottimizzarlo. Oddio… ne ho fatti diversi e qualcuno mi da risultati ottimi in back ma poi è tutto da vedere e valutare.
Qualcuno potrebbe darmi una mano a capire meglio e magari a ottimizzarli? Mi vergogno un po’ perchè sono semplicissimi però da qualche parte bisognerà pure cominciare. Sono trader da alcuni anni e sono anche formatore di analisi tecnica, ho 57 anni.
Vi posto questi 2 per cominciare. Sono semplici come sistemi, sono sicuro che si può migliorare anche perchè purtroppo il back test non mi tiene conto delle oscillazioni intraday.
Ho tutto da imparare, quindi ogni consiglio, osservazione e critica è molto ben accetta.
Un saluto a tutti
questo è il primo, titolo GILD
// Definizione dei parametri del codice
DEFPARAM CumulateOrders = False // Posizioni cumulate disattivate
// Condizioni per entrare su posizioni long
indicator1 = Average[3](close)
indicator2 = Average[5](close)
c1 = (indicator1 > indicator2)
IF c1 THEN
BUY 200 SHARES AT MARKET
ENDIF
// Condizioni per entrare short
indicator1 = Average[3](close)
indicator2 = Average[5](close)
c1 = (indicator1 < indicator2)
IF c1 THEN
sellshort 200 SHARES AT MARKET
ENDIF
// Stop e target
SET STOP %TRAILING 0.75
questo il secondo sempre su GILD… la cosa strana è che mi sembra a volte non tenga in considerazione lo stop…
// Definizione dei parametri del codice
DEFPARAM CumulateOrders = false // Posizioni cumulate disattivate
// Condizioni per entrare su posizioni long
indicator1 = CCI[20]
c1 = (indicator1 < -100)
indicator2 = Momentum[10](close)
c2 = (indicator2 < 0)
indicator3 = Average[3](close)
indicator4 = Average[5](close)
c3 = (indicator3 CROSSES OVER indicator4)
indicator5 = LinearRegression[30](Momentum[10](close))
indicator6 = LinearRegression[30](Momentum[10](close))
c4 = (indicator5 > indicator6[2])
IF c1 AND c2 AND c3 and c4 THEN
BUY 200 SHARES AT MARKET
ENDIF
// Condizioni per uscire da posizioni long
indicator5 = CCI[20]
c4 = (indicator5 > 100)
indicator6 = Momentum[10](close)
c5 = (indicator6 > 0)
indicator7 = Average[3](close)
indicator8 = Average[5](close)
c6 = (indicator7 CROSSES UNDER indicator8)
indicator9 = LinearRegression[30](Momentum[10](close))
indicator10 = LinearRegression[30](Momentum[10](close))
c7 = (indicator9 < indicator10[2])
IF c4 AND c5 AND c6 and c7 THEN
SELL AT MARKET
ENDIF
// Condizioni per entrare su posizioni short
indicator9 = CCI[20]
c7 = (indicator9 > 100)
indicator10 = Momentum[10](close)
c8 = (indicator10 > 0)
indicator11 = Average[3](close)
indicator12 = Average[5](close)
c9 = (indicator11 CROSSES UNDER indicator12)
indicator13 = LinearRegression[30](Momentum[10](close))
indicator14 = LinearRegression[30](Momentum[10](close))
c10 = (indicator13 < indicator14[2])
IF c7 AND c8 AND c9 and c10 THEN
SELLSHORT 200 SHARES AT MARKET
ENDIF
// Condizioni per uscire da posizioni short
indicator13 = CCI[20]
c10 = (indicator13 < -100)
indicator14 = Momentum[10](close)
c11 = (indicator14 < 0)
indicator15 = Average[3](close)
indicator16 = Average[5](close)
c12 = (indicator15 CROSSES OVER indicator16)
indicator17 = LinearRegression[30](Momentum[10](close))
indicator18 = LinearRegression[30](Momentum[10](close))
c13 = (indicator17 > indicator18[2])
IF c10 AND c11 AND c12 and c13 THEN
EXITSHORT AT MARKET
ENDIF
// Stop e target
SET STOP LOSS 200
grazie
ALEModerator
Master
Buongiorno,
grazie per esserti unito a noi, e per aver condiviso le tue strategie.
Vorremmo aiutarti e per incominciare avremmo bisogno di sapere più precisamente quale parte del codice hai bisogno di ottimizzare.
Il problema dello Stop lo vado a guardare..
Grazie
Ale
ALEModerator
Master
Mi potrebbe indicare il codice dello strumento in questione, la mia piattaforma non trova gilead scince
ciao ale, grazie per la risposta.
il primo codice è per una strategia che entra a mercato quando il prezzo è sopra la sma 20 al prezzo di apertura e vende con il trailing di 0,75%. ovviamente non tiene conto delle oscillazioni intraday, forse bisognerebbe ottimizzarlo con candele a 15 o 30 min… (ora ho il grafico daily perchè ho la vers base)
la seconda risposta è: il codice non lo so, il tiker è GILD (Nasdaq) mi sembra strano che non la trovi dato che è una delle società del nasdaq 100, digitando nel box di ricerca la trova subito
fammi sapere, grazie per ora
ALEModerator
Master
Ciao
non sei cliente IG? Stai usando la piattaforma tramite Prorealtime? perche in tal caso mi spiego che per avere Gilead Science devi sottoscrivere l’abbonamento per l’informativa prezzi, e quindi io non avendola sottoscritta , non mi compare nella lista.
Per poter lavorare con prorealtime, bisogna avere a disponibili 200.000 barre e qualsiasi time frame, Ogni codice in base al time frame dara’ risultati diversi, per avvicinarsi ad un versione di codice stabile bisogna assolutamente testarlo sul time frame definitivo. Sopratutto quando lo stop è cosi stretto.
ho la versione gratuita di proreal e ho tutte le azioni e strumenti ma con dati di fine giornata, non ho ig. Puoi provarlo su qualche altro strumento se vuoi.
Ho notato che ogni strategia funziona bene su determinati strumenti, peggio su altri
cmq vedo che non puoi dirmi niente riguardo al codice. fammi sapere, grazie
ciao , devi abilitare la modalità di backtest “tick per tick ” , io ho PRT direttamente con loro, ho abilitato il mercato nyse, ti faccio un esempio con il tuo codice con il titolo Alibaba (ticker BABA ) dal 2014 a oggi, la prima foto con tick by tick disabilitato, la seconda con tick by tick abilitato:
Grazie. Mi sembra di capire che con il tick by tick riusciamo a prendere le oscillazioni intraday e quindi risulta più affidabile. Io purtroppo non posso fare il tick by tick perchè ho la versione base gratuita (per ora). ti ringrazio cmq per l’aiuto. Se potessi fare una prova anche sul titolo che ho testato io GILD mi potresti far vedere i risultati che ti da tick by tick. grazie infinite ancora