
この戦略は,Coinbase取引所の3分間のK線をベースにした高周波取引戦略である.これは,K線の上下線を計算して,短期間に価格が逆転する機会があるかどうかを判断する.価格が上昇または下落の幅が大きいとき,戦略は,短線が逆転することを期待して,トレンドに反するポジションを取ります.
この戦略は,価格が短期的に超買いまたは超売りをする機会があるかどうかを判断する.超買いまたは超売りは,通常,市場の過剰な楽観的または悲観的な感情から生じる.このような一時的な感情の不均衡が生じると,価格は通常反転する.
具体的には,策略計算K線の上下影線の大きさ,影線が大きければ大きいほど,現在のK線が結ばれていないときに,買取力と売り力の対決が激しくなる.上影線が大きすぎれば,多くの買取がK線収束前に抛盤で打ち負かされ,多頭力の衰えが近づいていることを予告する.下影線が大きすぎれば,多くの売り物がK線収束前に買取が吸収され,空頭力の衰えが近づいていることを予告する.
この判断論理に従って,戦略は,影線が大きすぎるとき (つまり,価格が短期的に上昇し,買い買いし,売り切れになったとき) に,トレンドと逆のポジションを取ることを選択します. 多頭位に入る際のストップ価格は下影線の中間価格で,空頭位に入る際のストップ価格は上影線の中間価格です.
この戦略の最大の利点は,市場の短期的な不合理な波動を動かし,反転ブレイジングを実現することです.それはより少ない資金でより高い効率を得ることができます.
コインベーズは波動性の高い取引所であり,その価格の激しい波動を利用して利益を得ている.
この戦略の最大のリスクは,短期的な価格変動があまり予測できないことにある.上下影線の大きさは,価格が逆転するすべての情報を必ずしも捕捉することができない.トレーダーの非合理的な感情は,必ずしも論理の法則に従わない.したがって,この戦略は,一定のランダム性のリスクに直面している.
さらに,止損ポイントの設定も極めて重要です.止損ポイントが過度に緩やかになり,戦略の損失を増やす可能性があります.止損ポイントが過度に厳格であれば,チャンスを逃す可能性があります.ここでは,勝負比率と勝率の間のバランスを探す必要があります.
この戦略は,以下の側面からさらに最適化できます.
この戦略は,全体として,典型的な統計的利戦略である.短期的な非合理的な価格変動を利用して利益を得ようと試み,ある程度の論理性と実行性がある.次のステップは,戦略のパラメータ設定と取引ルールをより科学的なシステムにするために,より多くの次元から実験を最適化することができます.
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
//for coinbase, 3min logic
//This strategy trades against the short term trend. The first position can be either long or short.
//In the short term, prices fluctuate up and down on wide spread exchanges.
//And if the price moves to one side, the price tends to return to its original position momentarily.
//This strategy set stop order. Stop price is calculated with upper and lower shadows.
strategy("ndb_mm_for_coinbase_btcusd", overlay=true, initial_capital=100000, slippage=50)
fromyear = input(2019, minval = 2017, maxval = 2100, title = "From Year")
frommonth = input(12, minval = 1, maxval = 12, title = "From Month")
fromday = input(1, minval = 01, maxval = 31, title = "From day")
toyear = input(2100, minval = 1900, maxval = 2100, title = "To Year")
tomonth = input(12, minval = 01, maxval = 12, title = "To Month")
today = input(31, minval = 01, maxval = 31, title = "To day")
end = true
length = input(3, title="period")
mag = input(1.2, title="sigma", minval=0.1, step=0.1)
up_shadow = abs(high - max(open, close))
dn_shadow = abs(low - min(open, close))
up_shadow_ma = sma(up_shadow, length) * mag
dn_shadow_ma = sma(dn_shadow, length) * mag
upper = close + dn_shadow_ma
lower = close - up_shadow_ma
plot(upper, color=red)
plot(lower, color=blue)
if strategy.position_size == 0
strategy.entry("Long", strategy.long)
if 0 < strategy.position_size
strategy.entry("Short", strategy.short, stop=lower, when=end)
if 0 > strategy.position_size
strategy.entry("Long", strategy.long, stop=upper, when=end)