リバースエンジニアリングRSI戦略は,RSI指標に基づいた取引戦略である.この戦略は,RSI指標の計算プロセスをシミュレートして取引信号を生成することによって,価格を逆で推移する.
この戦略の基本理念は
RSI インジケーターの K 値, ExpPer 期間,AUC の上昇順序,ADC の減少順序を計算する.
RSI パラメータ設定,ADC,AUC シーケンス値などに基づいて nVal を計算する.
nVal を値に足して nRes を逆で引き算する.
nResを現在の閉値と比較して,長信号と短信号を生成する.
具体的には,戦略はまず,K値,ExpPer期,AUC上昇順序,ADC減少順序を含むRSIのいくつかのキーパラメータを計算する.それらのうちのK値はスムージングファクターであり,ExpPerはRSIパラメータ設定の2倍マイナス1である.
このパラメータに従って,戦略は価格を逆で推移します.まず,キー変数 nVal が計算され,これは (WildPer - 1) * (ADC_Value / (100 - Value) - AUC) に等しいです.この式は,RSI 計算プロセスを逆で推移します.
次に,現在の閉値に nVal を加え,逆設計価格 nRes を得ます.最後に,nRes が現在の閉値よりも高くなった場合,ショート信号が生成されます.nRes が現在の閉値よりも低くなった場合,ロング信号が生成されます.
この戦略の主な利点は以下の通りです.
革新的に RSI の計算プロセスを逆で推論する.この論理は新鮮で,ある程度革新的です.
リバース・エンジニアリングの価格は,市場の反対の取引信号を生成し,ショートセールが戦略の適用範囲を広げることを可能にします.
RSIは成熟し,一般的に使用される取引指標で,パラメータ設定が合理的で,信頼性が高く,リスクが低い.
戦略の論理は明確で理解しやすい. 数少ないパラメータにより,量的な取引の要求に応えるように簡単に実行できます.
この戦略にはいくつかのリスクもあります:
リバース・エンジニアリング価格は,RSIの計算のみに依存します.RSIが間違った信号を送信した場合,戦略信号も失敗します.
逆の信号は市場全体の動向と一致しない可能性があります.全体的な環境には注意が必要です.
RSI パラメータ設定には経験が必要です.不正な設定は,過剰な取引または間違った信号につながる可能性があります.
リバース オペレーションによるショート セールではリスクが高い.口座の膨張を防ぐために厳格なマネジメントが必要です.
RSIのパラメータを最適化し 他の指標を組み合わせ 厳格なマネジメントによって リスクをコントロールできます
戦略は以下の側面で最適化できます.
RSIパラメータを最適化し,WildPerとValueを市場条件に適したものにします.
ストップ・ロスの戦略を追加して 利益を固定し 損失を減らす
MACDなどの他の指標と組み合わせることで より正確で信頼性の高い信号を生成します
オープンポジションのフィルターを追加して,不必要な損失を回避します.
資金管理戦略を最適化し,取引ごとに資本を厳格に管理し,手頃な範囲を超えた損失を防ぐ.
リバースエンジニアリングRSI戦略は,RSI計算プロセスを逆に推移することによって,市場とは反対の取引信号を生成する.この戦略はユニークな論理と特定の革新性があり,ショートセールが適用範囲を拡大することを可能にします.しかし,適切な最適化とリスク管理を必要とするリバースオペレーションのリスクもあります.全体として,戦略は定量的な取引のための新しいアイデアとツールを提供します.
/*backtest start: 2022-11-21 00:00:00 end: 2023-11-27 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 25/10/2017 // The related article is copyrighted material from // Stocks & Commodities. // // You can change long to short in the Input Settings // WARNING: // - For purpose educate only // - This script to change bars colors. //////////////////////////////////////////////////////////// strategy(title="Reverse Engineering RSI, by Giorgos Siligardos", overlay = true) Value = input(50, minval=1) WildPer = input(14,minval=1) reverse = input(false, title="Trade reverse") ExpPer = 2 * WildPer - 1 K = 2 / (ExpPer + 1) AUC = iff(close > close[1], K * (close - close[1]) + (1 - K) * nz(AUC[1], 1), (1-K) * nz(AUC[1], 1)) ADC = iff(close > close[1], (1-K) * nz(ADC[1], 1), K * (close[1] - close) + (1 - K) * nz(ADC[1], 1)) nVal = (WildPer - 1) * (ADC * Value / (100 - Value) - AUC) nRes = iff(nVal >= 0, close + nVal, close + nVal * (100 - Value) / Value) pos = iff(nRes > close, -1, iff(nRes < close, 1, nz(pos[1], 0))) possig = iff(reverse and pos == 1, -1, iff(reverse and pos == -1, 1, pos)) if (possig == 1) strategy.entry("Long", strategy.long) if (possig == -1) strategy.entry("Short", strategy.short) barcolor(possig == -1 ? red: possig == 1 ? green : blue ) plot(nRes, color=blue, title="Reverse Engineering RSI")