相対量指標戦略

作者: リン・ハーンチャオチャン, 日付: 2023-12-20 15:12:56
タグ:

img

戦略の概要

これは,相対強度指数 (RSI) と相対量指標に基づいた定量的な取引戦略である.この戦略は,強いトレンドの最速段階での取引によって過剰収益を掴むことを目的としている.

戦略の論理

この戦略には,相対強度指数 (RSI) と相対容量 (RVOL) の2つの指標が含まれています.RSIは過剰購入/過剰販売レベルを判断します.RSIは30未満で過売りを示し,RSIは70を超える場合は過買いを示します.RVOLは最近の平均値と比較して増幅を記録します.RVOLが限界値を超えると,強烈な購入/売却圧力を示します.RVOLは,RVOLの値値が上昇すると,RVOLは上昇し,RVOLは上昇し,RVOLは上昇し,RVOLは上昇し,RVOLは上昇し,RVOLは上昇し,RVOLは上昇し,RVOLは上昇し,RVOLは上昇し,RVOLは上昇し,RVOLは上昇し,RVOLは上昇し,RVOLは上昇し,RVOLは上昇し,RVOLは上昇し,RVOLは上昇し,RVOLは上昇し,RVOLは上昇し,RVOLは上昇し,RVOLは上昇し,R

戦略の論理は,RSIが過買い (値の上) とRVOLが上昇するときにロングに行く.RSIが過売り (値下) とRVOLが上昇するときにショートに行く.RSIが正常レベルに戻ったときに出口信号が発生する (ロング出口:RSI69以下;ショート出口:RSI31以上).

利点分析

この戦略の最大の利点は,RSIからオーバーバイト/オーバーセールシグナルと高い相対ボリュームシグナルを組み合わせることで,トレンドの最も攻撃的な部分を特定することです.RSIとRVOLのコンボシグナルを使用することで,多くの偽ブレイクを回避し,収益性を向上することができます.

この戦略は,RSIのみを使用すると比較して,流動性が不十分で市場に参入することを避けるため,ボリューム情報を組み込む.この戦略は,ブレークアウトのみを使用すると比較して,OB/OS地域における主要なトレンドに反して取引を防ぐ.

リスク分析

この戦略の最大のリスクは,RSIが誤った信号を与える可能性である.市場が変動しているとき,RSIは頻繁にOB/OSゾーンに侵入/離脱し,誤った信号を生成する可能性があります.また,この戦略はボリューム変化に敏感です.低流動性の楽器は収益性を値下げすることができます.

リスクを軽減するために,RSIのパラメータは平均期間の増加やRVOLの限界値の引き上げなど調整することができます.他の指標を組み合わせることで,強度も向上します.

オプティマイゼーションの方向性

潜在的な最適化には,以下が含まれます.

  1. 流動性のない楽器を避けるために流動性指標を追加する.

  2. 取引に波動性指標を追加するのは波動性の拡大時にのみです.

  3. 偽のブレイクを防ぐためのメカニズムを構築する.例えば,監視量

  4. ストップ・ロスを厳格に設定し 引き上げを制限する

  5. バックテストに基づいてパラメータを調整し,最適な設定を見つけます.

結論

相対ボリューム戦略は,RSIと相対ボリュームを組み込むことで,OB/OSゾーン内の急増ボリュームのポイントを特定することができ,効果的なトレンドキャッチ戦略となります.明確な論理と堅牢な最適化により,定量取引システムに貴重な追加となります.


/*backtest
start: 2022-12-13 00:00:00
end: 2023-12-19 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © gary_trades
//This script is a basic concept to catch breakout moves utilising a spike in relative volume when the RSI is high (for longs) or when the RSI is low (for shorts).
//Drawdown is typically low as it exits out of the trade once the RSI returns back to "normal levels".

//@version=4
strategy(title="Relative Volume & RSI Pop", shorttitle="VOL & RSI Pop", overlay=false, precision=2, margin_long=100, margin_short=100)

//RSI
RSIlength = input(14, title="RSI Period")
RSItop = input(70, title="RSI buy", minval= 69, maxval=100)
RSIbottom = input(35, title="RSI short", minval= 0, maxval=35)
price = close
vrsi = rsi(price, RSIlength)
RSIco = crossover(vrsi, RSItop)
RSIcu = crossunder(vrsi, RSIbottom)
plot(vrsi, "RSI", color=color.purple)
band1 = hline(70, "Upper Band", color=#C0C0C0)
bandm = hline(50, "Middle Band", color=color.new(#C0C0C0, 50))
band0 = hline(30, "Lower Band", color=#C0C0C0)
fill(band1, band0, color=color.purple, transp=90, title="Background")

//RELATIVE VOLUME
RVOLlen = input(14, minval=1, title="RV Period")
av = sma(volume, RVOLlen)
RVOL = volume / av
RVOLthreshold = input(1.5,title="RV Threshold", minval=0.5, maxval=10)

//TRADE TRIGGERS
LongCondition = RSIco and RVOL > RVOLthreshold
CloseLong = vrsi < 69

ShortCondition = RSIcu and RVOL > RVOLthreshold
CloseShort = vrsi > 35

if (LongCondition)
    strategy.entry("Long", strategy.long)
    
strategy.close("Long", when = CloseLong)    

if (ShortCondition)
    strategy.entry("Short", strategy.short)
    
strategy.close("Short", when = CloseShort)   


もっと