Ichimoku – kijun cross – problemi con chiusura posizione
Forums › ProRealTime forum Italiano › Supporto ProOrder › Ichimoku – kijun cross – problemi con chiusura posizione
- This topic has 22 replies, 2 voices, and was last updated 6 years ago by Gabrielcin.
-
-
04/24/2018 at 11:28 AM #69070
ho cercato di integrare le bande di bollinger al sistema ma purtroppo mi da risultati disastrosi. Ti posso chiedere se lo puoi provare e mi dici? probabilmente sbaglio io. Ti posto il codice che ho modificato, inoltre noto che durante la lateralità il sistema continua a lavorare allo stesso modo
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889// trading sistem basato su ICHIMOKU - 1 ORA// TESTING//******************************************//****** INGRESSO LONG : PREZZO OVER KIJUN// PREZZO OVER TENKAN//*****CHIUSURA LONG : PREZZO UNDER KIJUN// PREZZO UNDER TENKAN//******************************************// *******INGRESSO SHORT : PREZZO UNDER KIJUN// PREZZO UNDER TENKAN//******* CHIUSURA SHORT : PREZZO OVER KIJUN// PREZZO OVER TENKAN//******************************************//tempo =(time=>060000 and time <=110000)a = BollingerUp[40](close)b = BollingerDown[40](close)B1Range = a - bc = BollingerUp[20](close)d = BollingerDown[20](close)B2Range = c - dif B2Range < (B1Range/2) thenNoTrade = 1elseNoTrade = 0endif//ichimokuTenkansen = (highest[9](close)+lowest[9](close))/2Kijunsen = (highest[26](close)+lowest[26](close))/2//SSpanA = (tenkansen[28]+kijunsen[28])/2//SSpanB = (highest[119](high[28])+lowest[119](low[28]))/2//Chikou = close[28]//condizioni longkijunlong = close crosses over kijunsentenkanlong = close crosses over tenkansen//condizioni shortkijunshort = close crosses under kijunsentenkanshort = close crosses under tenkansen//ingresso longif not longonmarket and Notrade=0 thenif kijunlong thenbuy 1 contract at marketendifif tenkanlong and tenkansen > kijunsen thenbuy 1 contract at marketendifendif//uscita longif longonmarket thenif kijunshort thensell at marketendifif tenkanshort and tenkansen > kijunsen thensell at marketendifendif//ingresso shortif not shortonmarket and notrade=0 thenif kijunshort thensellshort 1 contract at marketendifif tenkanshort and tenkansen < kijunsen thensellshort 1 contract at marketendifendif//uscita shortif shortonmarket thenif kijunlong thenexitshort at marketendifif tenkanlong and tenkansen < kijunsen thenexitshort at marketendifendif04/24/2018 at 12:07 PM #69077Non sono certo la soluzione definitiva, prova a mettere le due bande sul grafico sul quale provi la strategia e vedi se sono in un range o meno, magari devi aggiustare un pò i valori delle bande o la deviazione.
Puoi anche abbinare alle bande quel codice che ho pubblicato sulla lateralità per vedere se, combinando le due cose, ottieni risultati migliori.
Un altro modo per verificare la lateralità è quella di vedere se una certa media mobile alterna brevi fasi in cui va su ad altre in cui va giù, facendo una specie di zigzag. E’ chiro che per determinare che siamo in un range devono passare alcune candele, per cui arrivi sempre in ritardo rispetto al prezzo. L’importante è che riesca, alla fine, a risparmiarti qualche trade, non certo ad eliminarli tutti quelli che vengono aperti in una fase laterale.
Cercando sul forum LATERALITA o RANGE o CONTRACTION o CONTRAZIONE magari riesci a trovare altri esempi più o meno validi. Puoi cercare anche sul web se trovi qualcosa su come identificare una contrazione e magari possiamo codificarlo.
04/26/2018 at 10:10 AM #69197ho trovato questo codice che sembri funzionare abbastanza bene riguardo le bande di bollinger. Vediamo se ho capito bene, è nella variabile “ca3” che il sistema capisce se siamo in presenza di trend o meno?
1234567891011121314151617181920212223242526// % Bollinger en tendanceDefparam cumulateorders = false// Taille des positionsn = 1// Indicateur % Bollinger : pB// Paramètres 5/1BollInf = Average[5](close)-1*std[5](close)BollSup = Average[5](close)+1*std[5](close)pB = (close - BollInf) / (BollSup - BollInf)// ACHATca1 = close > average[100](close)ca2 = average[20](close) > average[200](close)ca3 = pB[1] < 0.2 and pB < 0.2IF ca1 and ca2 and ca3 THENbuy n shares at marketENDIF// SORTIE ACHATIF pB crosses over 1 THENsell at marketENDIF04/26/2018 at 11:38 AM #69206Mi sembra un codice poco efficace, intanto le bande sono molto strette, 5 rispetto allo standard di 20, poi non capisco bene cosa abbia voluto fare con il calcolo di pB, ma in ogni caso, applicate sul grafico mi pare dia molti falsisegnali.
Ad ogni modo, se metti le BB sul grafico puoi vedere le caratteristiche quando entri in un range, in particolare quandi entrambe si contraggono e quando si espandono, come da foto allegata.
Per tornare al codice di cui sopra (a parte i settaggi che ciascuno preferisce), per vedere se si contraggono si scrive:
1Contrazione = BollInf > BollInf[1] AND BollSup < BollSup[1]come vedi si confrontano i due limiti, quello superiore deve essere < alla candela precedente e quello inferiore deve essere > della candela precedente.
L’opposto per l’espansione
1Espansione = BollInf < BollInf[1] AND BollSup > BollSup[1]04/26/2018 at 12:12 PM #69208ho capito, il tuo esempio mi è di molto aiuto. Purtroppo però mi sto confondendo e non sto riuscendo più a capire come integrarlo con il mio codice. Se riuscissi a mettere insieme i due codici potrebbe risultare una buona tecnica sia per lo scalping che per il lungo periodo
04/26/2018 at 12:36 PM #69219Ho modificato io il tuo codice di cui sopra, inserendo la parte evidenziate all’inizio tra le due righe “/////////////////////////////////////////////////” e poi ho modificato le righe per l’entrata LONG e SHORT. Prova e fammi sapere sze funziona correttamente la parte logica del codice, non tanto la strategia, che dovrai aggiustare te.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105// trading sistem basato su ICHIMOKU - 1 ORA// TESTING//******************************************//****** INGRESSO LONG : PREZZO OVER KIJUN// PREZZO OVER TENKAN//*****CHIUSURA LONG : PREZZO UNDER KIJUN// PREZZO UNDER TENKAN//******************************************// *******INGRESSO SHORT : PREZZO UNDER KIJUN// PREZZO UNDER TENKAN//******* CHIUSURA SHORT : PREZZO OVER KIJUN// PREZZO OVER TENKAN//******************************************////////////////////////////////////////////////////////////////////////////////ONCE Contrazione = 0ONCE Espansione = 0BollInf = Average[5](close)-1*std[5](close)BollSup = Average[5](close)+1*std[5](close)Contrae = BollInf > BollInf[1] AND BollSup < BollSup[1]Espande = BollInf < BollInf[1] AND BollSup > BollSup[1]IF Contrae THENContrazione = 1Espansione = 0ENDIFIF Espande THENContrazione = 0Espansione = 1ENDIF//////////////////////////////////////////////////////////////////////////////////tempo =(time=>060000 and time <=110000)a = BollingerUp[40](close)b = BollingerDown[40](close)B1Range = a - bc = BollingerUp[20](close)d = BollingerDown[20](close)B2Range = c - dif B2Range < (B1Range/2) thenNoTrade = 1elseNoTrade = 0endif//ichimokuTenkansen = (highest[9](close)+lowest[9](close))/2Kijunsen = (highest[26](close)+lowest[26](close))/2//SSpanA = (tenkansen[28]+kijunsen[28])/2//SSpanB = (highest[119](high[28])+lowest[119](low[28]))/2//Chikou = close[28]//condizioni longkijunlong = close crosses over kijunsentenkanlong = close crosses over tenkansen//condizioni shortkijunshort = close crosses under kijunsentenkanshort = close crosses under tenkansen//ingresso longif not longonmarket and Notrade=0 and not Contrazione thenif kijunlong thenbuy 1 contract at marketendifif tenkanlong and tenkansen > kijunsen thenbuy 1 contract at marketendifendif//uscita longif longonmarket thenif kijunshort thensell at marketendifif tenkanshort and tenkansen > kijunsen thensell at marketendifendif//ingresso shortif not shortonmarket and notrade=0 and not Contrazione thenif kijunshort thensellshort 1 contract at marketendifif tenkanshort and tenkansen < kijunsen thensellshort 1 contract at marketendifendif//uscita shortif shortonmarket thenif kijunlong thenexitshort at marketendifif tenkanlong and tenkansen < kijunsen thenexitshort at marketendifendif04/26/2018 at 12:37 PM #69220Le righe 24 e 28 commentale se ti segnala che quella variabile non viene mai usata.
04/26/2018 at 3:10 PM #69226ho testato il codice e sembri funzioni, entra in posizione come vorrei io. Da migliorare le uscite ovviamente. Sembra che la lateralità venga filtrata un po di più. Ti posto i risultati.
-
AuthorPosts