Good Morning,
I share my first code based on a well-known strategy.
I tried to make it as simple as possible and not fill with indicators and triggers. A simple strategy following a reversion pattern of bars and a mean exp of 40 periods.
I would like to improve it and are welcome any of your contributions and opinions of money management, stop loss optimization, etc.
I’ve placed it in ProOrder Autotrading in Demo to see how it behaves.
Regards,
Gbp usd in 4 hour timeframe
Buenos días,
Comparto mi primer código basado en una estrategia por demás conocida.
Traté de hacerlo lo más sencillo posible y no llenar de indicadores y triggers. Una estrategia sencilla siguiendo un patrón de reversion de barras y una media exp de 40 períodos.
Me gustaría mejorarlo y son bienvenidos cualquiera de sus aportes y opiniones de money management, optimización de stop loss, etc.
Lo he colocado en el ProOrder Autotrading en Demo a ver como se comporta.
Saludos,
gbp usd en timeframe de 4 horas
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
// Condiciones para entrada de posiciones largas EMA40 = ExponentialAverage[40](close) nbar = 4 //Filtro:// //FDI (fractal dimension index) de 30 // N = 30 once fdi=undefined if barindex >= n-1 then diff=0 length = 0 pdiff = 0 hh=0 ll=0 FDI=0 HH = highest[N](close) LL = lowest[N](close) for Period = 1 to N-1 do if (HH - LL) > 0 then diff = (customclose[Period] - LL) / (HH - LL) if Period > 1 then length = length + SQRT(SQUARE(diff - pdiff) + (1 / SQUARE(N))) endif pdiff = diff endif next if length > 0 then FDI = 1 + (LOG(length) + LOG(2)) / LOG(2 * (N)) else FDI = 0 endif endif //profit step of the strategy to increase lot positionsize = 1 C4 = EMA40 CROSSES OVER CLOSE C3 = BARINDEX - TRADEINDEX = NBAR C5 = CLOSE CROSSES UNDER EMA40 IF not longonmarket and open > close[1] and C4 and FDI<1.5 THEN BUY positionsize LOT AT MARKET nextbaropen ENDIF //Condiciones de salida de posiciones largas If LongOnMarket AND C3 THEN SELL AT MARKET endif //Condiciones de entrada de posiciones cortas IF NOT ShortOnMarket AND open < close[1] and C5 and FDI<1.5 THEN SELLSHORT positionsize LOT AT MARKET nextbaropen ENDIF // Condiciones de salida de posiciones cortas IF ShortOnMarket AND C3 THEN EXITSHORT AT MARKET endif //Stops y objetivos: introduzca aquí sus stops de protección y objetivos de beneficios set stop ploss 60 |
Share this
No information on this site is investment advice or a solicitation to buy or sell any financial instrument. Past performance is not indicative of future results. Trading may expose you to risk of loss greater than your deposits and is only suitable for experienced investors who have sufficient financial means to bear such risk.
ProRealTime ITF files and other attachments :PRC is also on YouTube, subscribe to our channel for exclusive content and tutorials
Hola David, estaba mirando tu trading system y me preguntaba si ya lo habias probado en un mercado que no sea solo bjista (me parece viendo a la imagen que has puesto que no hubo un mercado alcista en el periodo que lo miraste).
De todas maneras voy ya he bajado tu codigo y lo voy a probar para ver como funciona en diferentes condiciones.
Ya hiciste un proceso de optimizacion? se sì, sobre cuales parametros?
Otra pregunta: no entiendo las razones de las formula con raiz cuadrada, logaritmos, etc… me las podrias explicar un poco mas?
gracias! hasta pronto
Giovanni
Hola Giovanni,
Solo lo he probado en libra dólar vs USD, en demás divisas no funciona con esos parámetros, habría que optimizarlos y adaptarlos. También podría limitarse un poco los horarios para evitar el overnight. Te recomiendo le hagas una optimización por capas para llegar al mejor setup.
Con respecto a las fórmulas, ese indicador FDI es el índice fractal y ayuda a detectar cuando hay poco movimiento y el mercado se lateraliza brevemente, funciona como filtro para NO abrir posiciones.
Saludos
Hola Giovanni,
Solo lo he probado en libra vs USD, en demás divisas no funciona con esos parámetros, habría que optimizarlos y adaptarlos. También podría limitarse un poco los horarios para evitar el overnight. Te recomiendo le hagas una optimización por capas para llegar al mejor setup.
Con respecto a las fórmulas, ese indicador FDI es el índice fractal y ayuda a detectar cuando hay poco movimiento y el mercado se lateraliza brevemente, funciona como filtro para NO abrir posiciones.
Saludos
Very good strategy I try It
with this target: SET TARGET PPROFIT AverageTrueRange[14](close)*4.8*10000
and this set: nbar = 5 It seem
So It seems to get better performance
Hello Pier, thanks I’m working in an alternative version and running WF on it.
What would be the meaning of the 4.8 ?
Regards,
optimisation from 2 to 5 step 0.2 could be overfitting ? whats your opinion ?
bonjour ce code fonctionne toujours?
Faites un backtest, vous aurez des réponses.
Hello,
You should try a WF analysis to see its behavior during 5 periods. Still, don’t understand what this multiplier factor means.
david, what is the well known strategy you are basing this code on?
Hello,
180º profit booster from Greg Secker.
Regards,
david, THANKS FOR THE REPLY,
IN YOUR CODE BELOW:
FDI=0
HH = highest[N](close)
LL = lowest[N](close)
for Period = 1 to N-1 do
if (HH – LL) > 0 then
diff = (customclose[Period] – LL) / (HH – LL)
if Period > 1 then
length = length + SQRT(SQUARE(diff – pdiff) + (1 / SQUARE(N)))
endif
pdiff = diff
endif
next
if length > 0 then
FDI = 1 + (LOG(length) + LOG(2)) / LOG(2 * (N))
else
FDI = 0
endif
endif
WHERE DID YOU FIND FDI IN YOUR CODE? I HAVE NEVER SEEN THIS CALCULATED, IN THIS CASE BEING USED AS A FILTER FOR THE TRADES?
Hello,
This is merely a filter indicator for measuring high fractality, which helps to avoid entering positions with lateral price movements.
Find a topic below. There are lots of books and authors that explains how to use this indicator.
http://www.x-trader.net/foro/viewtopic.php?t=18769
R.