Universal Strategy

Universal Strategy

If you have followed the thread found here: https://www.prorealcode.com/topic/profitable-strategy-that-work-on-any-market/

You will be aware that I have placed a challenge to the forum to create a universal market neutral strategy. In other words a strategy that can be adapted to any market without ANY optimization. Below is my attempt at exactly this. I have opted to add a trading time filter as all markets have their sweet spot.

No variables have to be optimized for this strategy to work other than the trading time and spread. Attached is 2 screenshots of the same code executed on 2 different markets (same 1Hr timeframe but different spreads) where in both instances the code has significantly outperformed Buy and Hold. Spread on CAC40 set to 3 and spread on ZAF40 set to 20.

Note that this strategy was not meant to be a jaw dropper in terms of performance but rather a proof of concept that a single strategy can be applied to different markets with positive results. Obviously optimizing this strategy to individual markets will yield better results but that was never the idea. Hopefully the whole ProRealCode community can benefit from this (and even improve on it).

Share this

Risk disclosure:

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 : How to import ITF files into ProRealTime platform?

PRC is also on YouTube, subscribe to our channel for exclusive content and tutorials

  1. Nicolas • 08/01/2017 #

    Thanks for this interesting concept. I successfully test the strategy on DAX and Bund (same kind of results as your other tests on SAF40 and CAC40), but I’m not able to get relevant backtests on other timeframes than 1 hour, and because you stated that this trading strategy is “non timeframe dependent”, that’s why I’m talking about it. Good job!

  2. juanj • 08/01/2017 #

    I just want to expand a bit on the mechanics of how this strategy should theoretically perform in both ranging and trending markets. The idea is that in a ranging market you would likely see Bollinger reversals between the bands whereas in a trending market you would see a successful Bollinger breakout. This strategy aims to take advantage of both. Then also just to be fair (in answering Nicolas’s question above) although I mentioned the strategy to be timeframe independent, it would more accurate to just call it market neutral. The above set of ‘static’ variables is more suited to a specific timeframe. For lower timeframes such as the 5min chart, a smaller MA such as 50 would likely be ‘more’ suited along with an ATR[1] period. However once configured for an timeframe, it should be compatible between different markets on that timeframe.

  3. juanj • 08/01/2017 #

    @nicolas it would be interesting to see the 200k bar backtests of the CAC40 and SAF40, if you can post them? Would also be interesting to see if another trading time-frame is maybe better suited back then? I also think that maybe we can look into adding a different stop mechanism, maybe something like your trailing stop? The idea is for the PRC COMMUNITY to build onto this to get it to perform even better and more consistently on all markets.

  4. juanj • 08/01/2017 #

    I have made a minor modification to the Exit criteria and the result is looking very promising (check the EUR/USD 1Hr with spread of 0.8) for example.

  5. juanj • 08/01/2017 #

    If longonmarket and ((close[2] > BollU and close[1] > BollU and close BollU and high[1] > BollU and high < BollU)) Then
    LE = 1
    ElsIf shortonmarket and ((close[2] < BollL and close[1] BollL) or (low[2] < BollL and low[1] BollL)) Then
    SE = 1
    EndIf

    If ((close 95 Then
    Sell at market
    ElsIf ((close > close[1] + ATR) or (SE = 1)) and RS2 < 5 Then
    Exitshort at market
    EndIf

  6. juanj • 08/01/2017 #

    For above modification also add to the entry criteria to initialize the values;

    ‘LE = 0’ below every ‘Buy possize contract at market’
    ‘SE = 0’ below every ‘Sellshort possize contract at market’

  7. juanj • 08/01/2017 #

    @Nicolas I see it also significantly brings down the drawdown on the CAC40.

    Btw why is the Add PRT Code function not working on here? Also cannot attach screenshots, there are some very sexy curves on for instance the EUR/USD that need some showing off.

  8. juanj • 08/01/2017 #

    To follow new developments or get the latest version of this strategy please visit the forum:
    https://www.prorealcode.com/topic/profitable-strategy-that-work-on-any-market/

  9. tahar • 08/01/2017 #

    Hello Juan, I wanted to test Universal Strategy via a demo account on PRT but nothing happens, the auto trading is in process but nothing occured after 6 hours, the screen has no orders at all. What could be the problem to your opinion? Cheers.

  10. BravoDelta • 08/01/2017 #

    @juanj wondering if you may help me please. I am looking for a simply strategy to use on the South African Alsi through IG markets, would you be able to discuss this with me? Thanks

avatar
Register or

Likes

avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar

+6 more likes

Related users ' posts
JanWd Thank you for the coding, it seems promising. FTSE gives for the short term (5 min) promis...
Jan Wind 21.04.2019: I retested the strategy for the DAX 5 minutes , it works fine for 10.000 bars, b...
bertrandpinoy hello Francesco, are you still working on this strategy?
Nicolas All conditions under parenthesis for the c1 to c4 conditions should be inverted. 
tomus Can you give an example of the overbought codes please? Thanks.
ams123 Frank Merci Nicholas -:)
Djo Not working on V11. The RSI doesn't appear on the chart.
Mika83 Bonjour, J'ai des soucis de lecture de syntaxe avec la variable "drawsegment" sur la versio...
seb234 Salut Mika, j'ai la version V11.1, la formule fonctionne. Mais il est préférable, dixit Nico...
bolsatonimora2 Hi, nice indicator, it´s possible to include a middle line with 50 value? ty!
gabri Hi, EMA26 approximate almost exactly the 50% line
Alain Wilder MA is exactly the 50% line
Samitha Prasanna Hi ALE, would you be able to provide the values for the below part of the code (time >=1...
Player Bonjour, J'ai testé cette stratégie sur EurUSD en 1 heures sur 10000 unités et le résultat ...
Player Vue du rapport du Backtest https://ibb.co/8BMrBz6
Nicolas Restart your platform in order to be sure to use the last version, there was a version rollb...
bertrandpinoy bonjour voud pouvez m envoyer le code modifier par vous?
Nicolas Désolé , je ne comprends pas votre question.
Nicolas Rien, il faut l'appliquer sur la charte. Soit le mettre sur le graphique du prix, à l'aide d...
signorini Merci pour votre réponse. Je l'applique sur la charte, j'utilise la petite clé pour effacer ...
signorini Je vous remercie, Nicolas. C'est fixé. Très bon week-end.
owes29 Hi is there anyway to develop this for the pro scanner on daily or hourly scans. so it woul...
Nicolas Of course, please add a query in the proscreener forum.
Bruno Carnazzi C'est dommage, cette histoire d'énergie fractale bousille complètement la précision de l'ind...
Derek Nice strategy. Have you tried adding a stop loss since there are a few sharp drawdowns? I ...
Piston_Broke Non so .... da qui la mia domanda iniziale :-)
Piston_Broke Hi Derek. I have tried many different ways to apply SL's to this and similar versions of th...
Nicolas si il n'y a pas de stoploss définit dans le code, alors c'est normal :)
bertrandpinoy bonjour merci pour la réponse. Oui b sur ... est il possible que le SL soit coder sous une a...
Nicolas ok mais pourquoi poser la question ici ? Pour des questions non spécifique à cette article, ...
Abz  hi , you need to add the indicator from the "price" menu in chart
Francesco Thank you Abz!
phanz Hi Nicolas, this is an interesting strategy. For long position, I assume entry when prices ...
Lyam Pareil ne marche pas dommage
ahmedbouaziz89 Bonjour, quand j'ajoute le code ou le fichier dans l'outils screeners de Prorealtime je ne v...
tyvix Bonjour le code marche bien c est juste qu'il n y a pas d opportunité au moment ou vous le...
SAM
8 years ago
diegofe_2000 vamos a probarlo
gregus bonjour a tous quelqu un pourait il recodé en prt il sagit  du dynamique zone ma, je n arri...
Nicolas Merci de faire une requête spécifique sur le forum. 
Elsborgtrading By adding the inside bar breakout failure candle, which is the next bar after the inside bar...
DegoodBoby very nice indicator but pls how can we use the indicator without the text (inside bar/brea...
ShaunG Hi Elsborgtrading thanks for this indicator. I was initially looking for a "IDnr4" which I c...
pascal3431 Salut Doc , Je ne vois pas ce qui fait office de stop dans ce code .. un retour dans le nua...
Doctrading Bonjour, Il s'agit juste d'une stratégie où on est toujours en position : soit à l'achat / ...
pascal3431 Bonjour, après quelques essais sur EUR/USD au M15 en rajoutant(car sinon on est en perte) u...
Nicolas
8 years ago
StepRSI
StepRSI
5
Indicators
Nicolas Thanks for this modification, I still do not have tested it, where did you get this idea to ...
rfsteve Trial and error from study of indicators call it coding mad science was trying to find an in...
Maxime Baudin Nice! Thanks :)
Nicolas
8 years ago
GraHal Forked code I mention above is here ... GraHal wrote: So below is the PRC Stochastic RSI v...
GraHal Try again (quite limited what you can do as Comments in the Library) https://www.prorealco...
AutoFlanders Thanks GraHal, that's what i was looking for

Top