RSIフィボナッチリトレースメント戦略は,RSI指標と設定されたフィボナッチリトレースメントレベルとのクロスオーバーに基づいて取引信号を生成し,過剰購入および過剰販売領域で逆転が発生するとポジションを取ります.これはトレンドフォロー戦略に属します.
この戦略は,RSIインジケーターとフィボナッチリトレースメントレベルとのクロスオーバーに基づいて実施される.まず,RSIインジケーターの値を計算し,その後,フィボナッチリトレースメントレベル (38.2%,50%,61.8%) を設定する.RSIインジケーターがフィボナッチレベルを超えると,購入信号が生成される.下を通ると,販売信号が生成される.
RSIインジケーターは,市場がオーバーバイトかオーバーセールなのか判断するために使用されます. RSIが70を超えるとオーバーバイトエリアを示し,30を下回るとオーバーセールエリアを示します. RSIがオーバーバイトエリアからフィボナッチリトレースゾーンに下がると,それはロングに行く逆転信号です. RSIがオーバーバイトエリアからフィボナッチリトレースゾーンに上昇すると,それはショートに行く逆転信号です.
この戦略におけるフィボナッチリトレースメントレベルは主に基準として機能し,RSIとの取引信号を形成する.トレンド市場では,リトレースメントの後,継続的な走行はしばしばサポートとレジスタンスのように機能するフィボナッチリトレースメントレベルに触れます.RSIとクロスオーバーを取引信号として取り込むことで,逆転の機会を捉えることができます.
逆転の機会を把握するためにフィボナッチリトラセシオンエリアと組み合わせて,過剰購入と過剰売却の形を特定するために RSI を使用することで,いくつかの騒音をフィルタリングすることができます.
中期から長期間の傾向を捉えることができます.
フィボナッチリトレースエリアを調整することで 異なる市場状況に適応できます
長期または短期的ポジションは長期にわたって持続し,十分な資本支援が必要となります.
引き戻しプロセスは再び高値と低値を示し,リスクを制御するためにストップ・ロスを必要とします.
パラメータの設定が正しくない場合,過剰な取引または逆転機会の把握が不十分になる可能性があります.
進出タイミングをフィルタリングするための他の指標を組み込むことを検討してください. 例えばMACDやボリンジャーバンドなど. 傾向の方向性を判断するために.
RSI周期やフィボナッチリトレースメントレベルなどのパラメータを最適化できます
ダイナミックストップ・ロスを設定して 利益を固定します
RSIフィボナッチリトレースメント戦略は,トレンドフォロー戦略として一般的に良好な安定性を持っています.単一のRSI戦略と比較して,フィボナッチリトレースメントエリアを追加することで,いくつかの騒々しい取引を効果的にフィルタリングすることができます.パラメータ最適化によって,さまざまな市場で異なる取引機器に適応できます.結論として,これは信頼性と最適化が容易な戦略アイデアです.
/*backtest start: 2022-12-22 00:00:00 end: 2023-12-28 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // (c) ReduX_o, 2019. All rights reserved. // // How to trade: // The indicator is more reliable in longer time frames // Choose a fibonacci level as reference // Buy when the RSI line turns green // Sell when the RSI line turns red //@version=4 strategy("RSI Fibonacci Levels", overlay=false, initial_capital=2000, currency=currency.USD, commission_value=0.1, slippage=0, commission_type=strategy.commission.percent, pyramiding=0, default_qty_type=strategy.percent_of_equity, default_qty_value=100) len = input(14, minval=1, title="Rsi Periods") f1 = input(title="Fibonacci Level", defval="38.2", options=["38.2", "50", "61.8"]) // === BACKTEST RANGE === FromYear = input(defval=2010, title="From Year", minval=2010) FromMonth = input(defval=1, title="From Month", minval=1) ToYear = input(defval=2020, title="To Year", minval=2010) ToMonth = input(defval=1, title="To Month", minval=1) src = hl2 fi= (f1 == "38.2") ? 38.2 : (f1 == "50")? 50 : 61.8 up = rma(max(change(src), 0), len) down = rma(-min(change(src), 0), len) rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - 100 / (1 + up / down) //*************************************************** rcolor = rsi >= fi ? color.lime : color.red plot(rsi, title="RSI", color=rcolor, transp=0) band1 = hline(78.6, color=color.red, linestyle= hline.style_solid, editable= false) band0 = hline(23.6, color=color.lime, linestyle= hline.style_solid, editable= false) band2 = hline(61.8, color=color.gray, editable= false) band3 = hline(50, color=color.black, editable= false) band4 = hline(38.2, color=color.gray, editable= false) band5 = hline(fi, color=color.blue, linestyle= hline.style_solid, editable= false) strategy.entry("LE", strategy.long, comment="L", when=rsi >= fi ) strategy.entry("SE", strategy.short, comment="S", when=rsi < fi )