P2-V2 also known as Penner2.0 began with a TEMA and MA cross on Heiken Ashi, a strategy brought to us by a group of crypto traders. Since then we've added a few more indicators and played around with the rules.
This is an early release as I have yet to go through the full automation aspect, however, I know some of you would like to see where it's at.
If you'd like to learn how to automate a full strategy using the Chrome Extension, go to the linked idea for a eurusd setup.
//Moving Average smaLength = input(7, minval=1) sma = sma(c, smaLength)
//RSI src = c rsiLength = input(4, minval=1, title="Length")
up = rma(max(change(src), 0), rsiLength) down = rma(-min(change(src), 0), rsiLength) rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
rsin= input(9) sn = 100 - rsin ln = 0 + rsin
//Strategy gc = c > o ? 1 : 0 rc = c < o ? 1 : 0 long = crossover(tema[2], sma[2]) and gc[1] == 1 and gc == 1 and rsi > sn short = crossunder(tema[2], sma[2]) and rc[1] == 1 and rc == 1 and rsi < ln
The above alert script did not copy/paste properly and is getting an error, to avoid clutter, just replace the bottom section @ //Strategy
//Strategy gc = c > o ? 1 : 0 rc = c < o ? 1 : 0 long = crossover(tema[2], sma[2]) and gc[1] == 1 and gc == 1 and rsi > sn short = crossunder(tema[2], sma[2]) and rc[1] == 1 and rc == 1 and rsi < ln
//Strategy gc = c > o ? 1 : 0 rc = c < o ? 1 : 0 long = crossover(tema[2], sma[2]) and gc[1] == 1 and gc == 1 and rsi > sn short = crossunder(tema[2], sma[2]) and rc[1] == 1 and rc == 1 and rsi < ln
To avoid repainting, this code needs to be adjusted. Results actually improve once the issue is corrected. On line 11 - 14 you'll see this... o = security(data, period, open) h = security(data, period, high) l = security(data, period, low) c = security(data, period, close)
we need to actually use the previous candle to avoid repainting, so just add a 1 candle look back. square brackets 1 after the words "open, high, low, close"
You use strategy function (h = security(data, period, high), l = security(data, period, low), c = security(data, period, close)). It`s like you know the future. At current bar you don`t know the high/low/close. However, when you do a historical backtesting security function knows those values.
In live trading it will repaint, until signal bar closing.
CryptoRox
⋅
Sadly, you are correct. I've recently had a few dreams crushed due to repainting :P
However it all works beautifully if you simply call the last candle ;)
//Easter Egg
o = security(data, period, open[1])
h = security(data, period, high[1])
l = security(data, period, low[1])
c = security(data, period, close[1])
TradingView is removing the edited section of the code for some reason. Apologies for the multiply reply/posts here.
o p e n [ 1 ]
h i g h [ 1 ]
l o w [ 1 ]
c l o s e [ 1 ]
AcerGold
⋅
Hi this is very nice!
do you can explain the exact rules how the strategy work?
I "study" the strategy but I don´t see the logic :D
thx and king regards
CryptoRox
⋅
BTCUSD3M - OKcoin Futures
Heiken Ashi Candles
Triple EMA
Length 15
Moving Average
Length 7
Relative Strength Index
Length 4
OverSold 9 and OverBought 91
Long Rules
Triple EMA crosses up the MA. The next 2 candles need to be green, and the rsi should be overBought (when the second green candle closes).
Short Rules
Triple EMA crosses down the MA. The next 2 candles need to be red, and the rsi should be OverSold (when the second red candle closes).
In the script, take profit is set to market close at 1,000% and Stop Loss is set to market close at -35%. This is using x20 leverage.
It will automatically close when it's time to open a position in the opposite direction if neither TP or SL are hit.
Things like TP and SL change slightly if you're looking to automate this using Autoview.
AcerGold
⋅
thx!
a question.
Is it possible to add a "start year" for backtesting? example: 2012/XY til today
king regards
MMB1
⋅
Thank you for the script, looks tasty!!!
Can you pls post the script for the alerts.
Thank you very much!!!
CryptoRox
⋅
Added it to the description above. Let me know if it works.
In live trading it will repaint, until signal bar closing.