Rating: Empty Star Empty Star Empty Star Empty Star Empty Star
I need help solving this programming Riddle (RSI).

Member Since Sep 25, 2019  1 posts agaguilara Sep 25 at 02:46 (edited Sep 25 at 02:49 )
Hello there my name is Agustin,
I'm stuck programming my tradingview strategy, which involves the Relative Strength Index or by its acronym RSI. The point is that RSI can help traders to identify when an asset is oversold or overbought. An RSI of 30 or below indicates that the asset could be oversold. At the moment, my strategy works well buying when the RSI is at 30.

The problem is when the RSI graph is between 30 and 70 and goes down through 30 (giving a buy) until reaching 26 or any other number below 30. This causes a buy order to be in negatives for a moment. This executed by the instruction: buycondition= rsi==30. See RSI_AAASTRATEGY.jpg to better understand what was previously reported.
What I am looking for is to be able to place a purchase order when the rsi goes up through 30 to channel 30 to 70 after having already gone through 30 when it came down to negatives. Not when it goes through 30 into negatives.

If you can help me raise the instructions for this process, I would appreciate it and give more details about my strategy to the person who solves it.


Member Since Jan 05, 2016  1048 posts Professional4X Sep 25 at 22:19
SHOW your code. It's a coding issue.

If it looks too good to be true, it's probably a scam! Let the buyer beware.

Member Since Oct 03, 2019  1 posts nulll Oct 06 at 02:29
@agaguilara, this is what you want

_rsi = rsi(close, 14)

enter_long = crossover(_rsi, 30)
exit_long = crossover(_rsi, 70)
enter_short = crossunder(_rsi, 70)
exit_short = crossunder(_rsi, 30)

strategy.entry(id='Buy it', long=true, qty=1.0, when=enter_long)
strategy.exit(id='Sell it', from_entry='Buy it', qty=1.0, when=exit_long)

strategy.entry(id='Short sell it', long=false, qty=1.0, when=enter_short)
strategy.exit(id='Cover it', from_entry='Short sell it', qty=1.0, when=exit_short)


Member Since Nov 21, 2011  1712 posts CrazyTraderfx (CrazyTrader) Oct 11 at 14:52

Obviously it not a code issue... it is a about conception.

That would be a better way to trade with RSI on the way you define.

Solution is quite simple:
Let's say every hour (once per hour), you stock into variables the value of RSI.

So now you have previous RSI.

Now you can also stock the minimun value of RSI based on this previous RSI.

If previous RSI < Miminum RSI then Mimimun RSI = Previous RSI.

Now you can get your entry:
If RSI > Previous RSI and RSI > 30 and Miminum RSI < 28 (for exemple) THEN trigger BUY.
This way you have designed your picture.

Once you triger Long, you reset to zero both variables for RSI (Privious and Minimun).

So to make sur you triger trades properly, you specify both variables different to 0:
If RSI > Previous RSI and RSI > 30 and Miminum RSI < 28 (for exemple) and (Previous RSI <>0 and Mimimun RSI <>0) THEN trigger BUY.

You do the same logic for Short strategy.

Good luck.

You love my free signals... Like me on fb
Please login to comment.
EURUSD 1.10534 GBPUSD 1.29016
USDJPY 108.814 USDCAD 1.32294







Twitter |  Facebook |  Site Map  |  Terms  |   Privacy Policy
©2019 Myfxbook Ltd. All Rights Reserved.
HIGH RISK WARNING: Foreign exchange trading carries a high level of risk that may not be suitable for all investors. Leverage creates additional risk and loss exposure. Before you decide to trade foreign exchange, carefully consider your investment objectives, experience level, and risk tolerance. You could lose some or all of your initial investment; do not invest money that you cannot afford to lose. Educate yourself on the risks associated with foreign exchange trading, and seek advice from an independent financial or tax advisor if you have any questions. Any data and information is provided 'as is' solely for informational purposes, and is not intended for trading purposes or advice. Past performance is not indicative of future results.