Strategia 1 Minuto In controtendenza Movimento
Forums › ProRealTime forum Italiano › Supporto ProOrder › Strategia 1 Minuto In controtendenza Movimento
- This topic has 9 replies, 3 voices, and was last updated 6 months ago by Simon.
-
-
05/15/2024 at 4:04 PM #232685
Buongiorno Roberto,
chiedo cortesemente aiuto per scrivere questa strategia:
Timeframe: 1 minuto
Strategia:
- Rileva l’escursione massima delle ultime 2 candele.
- Se l’escursione è superiore allo 0.005%:
- Se l’escursione è negativa, compra 1 contratto con target price al prezzo massimo delle 2 ultime candele.
- Se l’escursione è positiva, vende 1 contratto con target price al prezzo minimo delle 2 ultime candele.
- Il codice deve impedire l’apertura di una posizione inversa quando già sul mercato.
Grazie mille per il tuo aiuto.
Cordiali saluti, Simone
05/16/2024 at 4:55 PM #23273805/16/2024 at 5:13 PM #232739@ Roberto
così è giusto???
DEFPARAM CUMULATEORDERS =FALSE
TIMEFRAME (2 MINUTE)
CC=close[1]
OO=open[1]timeframe (default)
if not onmarket and CC>OO and CC/OO>FX then
sellshort 1 contract at market
endifif not onmarket and CC<OO and OO/CC>FX then
buy 1 contract at market
endiftimeframe (default)
if shortonmarket then
exitshort at CC limit
endifif longonmarket then
sell at OO limit
endif05/16/2024 at 5:23 PM #232740SCUSATE L’ERRORE
QUESTO DOVREBBE ESSERE OK.
DEFPARAM CUMULATEORDERS =FALSE
TIMEFRAME (15 MINUTE)
CC=close[1]
OO=open[1]timeframe (default)
if not onmarket and CC>OO and ((CC-OO)/CC)*100>FX then
sellshort 1 contract at market
endif
if not onmarket and CC<OO and ((OO-CC)/OO)*100>FX then
buy 1 contract at market
endiftimeframe (default)
if shortonmarket then
exitshort at CC limit
endif
if longonmarket then
sell at OO limit
endif05/17/2024 at 11:43 AM #232759Mi sembra più corretta questa versione (non ho previsto un’uscita perché non richiesta):
123456789101112131415161718192021DEFPARAM CUMULATEORDERS =FALSEMassimo = highest[2](high)Minimo = lowest[2](low)Rialzo = close > openRibasso = close < openIF Rialzo THENEscursione = rangeELSIF Ribasso THENEscursione = -rangeENDIFCondS = (summation[2](Escursione > 0) = 2)CondL = (summation[2](Escursione < 0) = 2)if not onmarket thenif CondL THENBUY 1 contract at MarketSet Target PROFIT Massimo - closeelsif CondS THENSELLSHORT 1 contract at MarketSet Target PROFIT close - Minimoendifendifil timeframe non l’ho specificato in quanto viene usato solo 1 minuto, quindi non serve.
1 user thanked author for this post.
05/20/2024 at 8:43 AM #232800Buongiorno,
desidero ringraziare tutti per l’aiuto.
Scusate ma ho scritto la richiesta in maniera errata e con i vostri suggerimenti non riesco a modificare il codice per ottenere quello che vorrei, quindi riformulo:
Strategia:
- Rileva l’escursione massima delle ultime N(Variabile) candele.
- Se l’escursione è superiore alla Percentuale(variabile), procede così:
- Se l’escursione è negativa, compra 1 contratto con target price al prezzo massimo delle N candele * coeff (variabile).
- Se l’escursione è positiva, vende 1 contratto con target price al prezzo minimo delle N candele * coeff (variabile).
- Il codice deve impedire l’apertura di una posizione inversa quando già sul mercato.
- Dopo un trade, il sistema deve entrare in pausa per PausaNBarre(variabile) e poi riprendere.
Lo scopo è di rilevare movimenti più o meno veloci e acquistare o vendere in controtendenza in corrispondenza dei massimi o dei minimi del movimento.
Grazie mille per il vostro aiuto.
07/02/2024 at 12:10 PM #234699Ecco:
123456789101112131415161718192021222324252627282930313233343536373839DEFPARAM CUMULATEORDERS = FALSEONCE N = 20 //20 candele lookback per escursioneONCE PC = 2.5 / 100 //2.5% percentualeONCE Coeff = 5.0 / 100 //5% coefficienteONCE Pausa = 10 //10 candele di pausa dopo la chiusura di un'operazioneONCE Cont = Pausa + 1Massimo = highest[N](high)Minimo = lowest[N](low)MaxHH = Massimo <> Massimo[1]MinLL = Minimo <> Minimo[1]Escursione = Massimo - MinimoEsc = Escursione > (Massimo * PC)IF BarsSince(MaxHH) > BarsSince(MinLL) THENEscursione = Minimo - MassimoEsc = abs(Escursione) > (Minimo * PC)ENDIFCondL = Esc AND (Escursione < 0)CondS = Esc AND (Escursione > 0)if not onmarket THENIF (Cont >= Pausa) thenif CondL THENBUY 1 contract at MarketSet Target PRICE Massimo * (1 + Coeff)Cont = 0elsif CondS THENSELLSHORT 1 contract at MarketSet Target PRICE Minimo * (1 - Coeff)Cont = 0endifENDIFCont = Cont + 1endifgraph Cont//graph Esc * 100 coloured("Red")//graph Escursione//graphonprice Massimo coloured("Fuchsia")//graphonprice Minimo coloured("Fuchsia")//graphonprice Massimo * (1 + Coeff) coloured("Blue")//graphonprice Minimo * (1 - Coeff) coloured("Red")1 user thanked author for this post.
07/02/2024 at 3:23 PM #23470407/02/2024 at 5:40 PM #23471207/03/2024 at 8:14 AM #234725 -
AuthorPosts
Find exclusive trading pro-tools on