トレンドフォローシステム (Trend Following System) は,ダブルボックスシステムに基づいたトレンド追跡戦略である.長期のボックスを用いて全体的なトレンド方向を決定し,短期のボックスのトリガー時に主要なトレンドに準拠するシグナルをとる.この戦略はリスクを管理しながらトレンドをフォローする.
戦略は,トレンドを決定するために2つのボックスを使用します.長期ボックスでは,主要なトレンド方向を判断するためにより長い期間を使用し,短期ボックスでは,より短い期間を使用して取引信号を生成します.
まず,戦略は,主要なトレンド方向を決定するために,長期ボックスで最も高い価格と最も低い価格を計算します.トレンド方向は以下のようなものかもしれません.
主な傾向が決まった後,戦略は短期的なボックス信号に基づいてポジションを取ります.
さらに,ストップ・ロストとテイク・プロフィートが設定されています.
主なトレンドが逆転すると,すべてのポジションを閉じる.
この戦略の利点は以下の通りです.
この戦略のリスクは以下のとおりです.
戦略は以下によって改善できます.
トレンドフォローシステム (Trend Following System) は,トレンド決定と短期調整を組み合わせた実践的なトレンドトレーディング戦略である.継続的な最適化により,リスクを制御しながらトレンドを追跡する強力な自動化されたシステムになることができる.トレンドトレーディングの核心哲学を含み,深く研究する価値がある.
[/トランス]
/*backtest start: 2023-10-25 00:00:00 end: 2023-10-26 07:00:00 period: 5m basePeriod: 1m 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/ // © LonesomeTheBlue //@version=4 strategy("Grab Trading System", overlay = true) flb = input(defval = 80, title = "Longterm Period", minval = 1) slb = input(defval = 21, title = "Shortterm Period", minval = 1) showtarget = input(defval = true, title = "Show Target") showtrend = input(defval = true, title = "Show Trend") major_resistance = highest(flb) major_support = lowest(flb) minor_resistance = highest(slb) minor_support = lowest(slb) var int trend = 0 trend := high > major_resistance[1] ? 1 : low < major_support[1] ? -1 : trend strategy.entry("Buy", true, when = trend == 1 and low[1] == minor_support[1] and low > minor_support) strategy.entry("Sell", false, when = trend == -1 and high[1] == minor_resistance[1] and high < minor_resistance) if strategy.position_size > 0 strategy.exit("Buy", stop = major_support, comment = "Stop Buy") if high[1] == minor_resistance[1] and high < minor_resistance strategy.close("Buy", comment ="Close Buy") if strategy.position_size < 0 strategy.exit("Sell", stop = major_resistance, comment = "Stop Sell") if low[1] == minor_support[1] and low > minor_support strategy.close("Sell", comment ="Close Sell") if strategy.position_size != 0 and change(trend) strategy.close_all() majr = plot(major_resistance, color = showtrend and trend == -1 and trend[1] == -1 ? color.red : na) majs = plot(major_support, color = showtrend and trend == 1 and trend[1] == 1 ? color.lime : na) minr = plot(minor_resistance, color = showtarget and trend == 1 and strategy.position_size > 0 ? color.yellow : na, style = plot.style_circles) mins = plot(minor_support, color = showtarget and trend == -1 and strategy.position_size < 0 ? color.yellow : na, style = plot.style_circles) fill(majs, mins, color = showtrend and trend == 1 and trend[1] == 1 ? color.lime : na, transp = 85) fill(majr, minr, color = showtrend and trend == -1 and trend[1] == -1 ? color.red : na, transp = 85)