主要トレンド指標 長

作者: リン・ハーンチャオチャン,日付: 2024-02-19 11:15:57
タグ:

img

概要

メジャートレンドインディケーター・ロング (MTIL) 戦略は,BTCUSD,ETHUSDなどの仮想通貨やAAPLなどの伝統的な株式を含む様々な金融機関で使用するために設計されています.ロングポジションへの入場のための潜在的な上昇傾向を特定することを目的としています.

戦略の論理

MTIL戦略は,定義されたバックバック期間の最高値と最低値を計算するために最適化されたパラメータを使用する.その後,線形回帰を適用して価格データを平滑化し,潜在的な上昇傾向を検出し,長いエントリーをシグナルする.

グラフでは,価格の順番を計算し,価格の順番を計算する.具体的には,最初に与えられた期間の最高値と最低値を導き出す.これらの値が,異なる係数を持つ線形回帰を用いて平滑される.その結果,上限と下限が形成される.平滑した最高値が上限を突破すると,平滑した最低値が下限を突破すると,閉値の短期的線形回帰は長期的回帰よりも高くなり,上昇信号が生成される.

利点分析

MTIL戦略には以下の利点があります.

  1. より正確なトレンド識別のために二重スムージング技術を使用します
  2. 過去のパフォーマンスをテストするためのカスタマイズ可能なバックテスト開始日
  3. 個々の貿易優遇に応じた調整可能なパラメータ
  4. 多期分析のための短期戦略と組み合わせられる

リスク分析

MTIL戦略には,次のリスクも伴う.

  1. トレンド・トレードリスク 拡大損失の可能性
  2. パラメータの調整が不適切で,機会を逃すか,間違った信号をもたらす
  3. 過剰な取引を避けるために取引コストを計算する必要性

パラメータ調整,ストップ損失,取引コスト管理などによって一部のリスクは軽減できる.

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

MTIL戦略は,次の次元で最適化できます.

  1. 最適値を見つけるために異なる周期パラメータの組み合わせをテストする
  2. 誤った信号を避けるため,価格と量の確認を組み込む
  3. シグナル確認を強化するために,インパルスと日中の動きをさらに検証するための他の指標を追加する
  4. 損失を停止し,利益を引き出すルールを確立し,利益の減少を制限する

結論

MTILは,主要なトレンドを特定するために線形回帰技術を利用するロングサイド戦略である.パラメータチューニングを通じて,さまざまな市場環境に適応することができる.ショートサイド戦略と組み合わせると,より包括的な分析を提供します.さらなる最適化は,正確性と収益性を向上させることができます.


/*backtest
start: 2023-02-12 00:00:00
end: 2024-02-18 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/
// © jensenvilhelm


//@version=5
strategy("Major Trend Indicator Long", shorttitle='MTIL', overlay = true)

startDate = timestamp("2001 06 18")
// Sets the start date for the strategy.

// Optimized parameters
length_high = 5
length_low = 5
linReg_st = 3
linReg_st1 = 23
linReg_lt = 75
// Defines key parameters for the strategy.

X_i = ta.highest(high, length_high)
Y_i = ta.lowest(low, length_low)
// Calculates the highest and lowest price values within the defined lookback periods.

x_y = ta.linreg(X_i + high, linReg_st1, 1)
y_x = ta.linreg(Y_i + low, linReg_lt, 1)
// Applies linear regression to smoothed high and low prices.

upper = ta.linreg(x_y, linReg_st1, 6)
lower = ta.linreg(y_x, linReg_st1, 6)
// Determines upper and lower bounds using linear regression.

upperInside = upper < y_x and upper > x_y
lowerInside = lower > y_x and lower < x_y
y_pos = (upper + lower) / 4

X_i1 = ta.highest(high, length_high)
Y_i1 = ta.lowest(low, length_low)

bull = x_y > upper and y_x > lower and ta.linreg(close, linReg_st, 1) > ta.linreg(close, linReg_lt, 5)
// Defines a bullish condition based on linear regression values and price bounds.

plotshape(series=(bull) ? y_pos : na, style=shape.circle, location=location.absolute, color=color.rgb(41, 3, 255, 40), size=size.tiny)

if (time >= startDate)
    if (bull)
        strategy.entry("Long", strategy.long)
    if not (bull)
        strategy.close("Long")
// Controls the strategy's execution based on the bullish condition and the start date.


もっと