移動平均変位エンベロープ戦略


作成日: 2024-02-02 17:02:18 最終変更日: 2024-02-02 17:02:18
コピー: 0 クリック数: 688
1
フォロー
1617
フォロワー

移動平均変位エンベロープ戦略

この戦略は,移動平均位移動包帯線指標に基づいて取引シグナル生成を行う.その中で,包帯線は移動平均のパーセント因数で計算される.前期高点が突破して軌道上なら,売り信号を生じ,前期低点が落ちて軌道下なら,買い信号を生成する.

戦略原則

この戦略は,移転指数移動平均 (EMA) を中心の指標として使用し,その一定の周期後に,パーセント因子で拡大して上下軌道を形成する.これは,移動平均移転率の完全なネットワークシステムを構成する.具体的には,ネットワークネットワークシステムは,次のものから構成される.

  • EMA ((Price, Period) - コアインデックスの移動平均
  • top = sEMA[disp] *[100 + perAb) / 100] - 上線
  • bott = sEMA[disp] *100 - perBl) / 100 - 下線

% above と % below は,上下軌道とコア指数移動平均の間の周期的な位移を制御する.

この方法で,上記のパラメータを調整することで適切な取引区間を形成できます. 価格が区間を破れば取引信号が生成されます.具体的には:

  • 閉店価格が下位ボットより低い場合は,買取シグナルが生じます.
  • 閉店価格が上線トップより高い場合,セールシグナルが生じます.

注目すべきは,この策略は,逆関数も提供しており,もし true に設定されれば,信号の方向は上述の逆になります.

優位分析

この戦略の利点は以下の通りです.

  1. インデックス移動平均を基礎指標として使用することで,曲線の遅滞を軽減し,価格変化に対する感受性を高めることができます.
  2. より多くのパラメータを調整し,パラメータ最適化によりより良い取引結果を得ることができます.
  3. 異なる種類の市場に対応するリバースモデルを提供
  4. 規則はシンプルで明確で,理解し,実行しやすい.

リスクと予防

この戦略にはいくつかのリスクがあります.

  1. 震災の際に誤信号が発生しやすい
  2. パラメータを正しく設定しない場合,過剰取引または信号の欠落が起こり得る
  3. 市場騒音を効率的にフィルターできず,無価値なシグナルを生成する可能性があります.

このリスクに対して,以下のような方法で最適化することができます.

  1. 取引量,変動率などの他の指標と組み合わせたフィルター信号
  2. パラメータの最適化プロセスを追加し,最適なパラメータの組み合わせを探します.
  3. ストップ・ロスの策略を適切に調整し,単発損失を制御する

思考を最適化する

この戦略は,以下のような観点から,改善する余地があります.

  1. マシン学習モデルを追加し,パラメータの自動最適化と調整を実現します.
  2. ストップ,移動ストップ,トレーリングストップなどの機能が追加され,リスクを効果的に制御できます.
  3. 感情指標と投資家の感情を組み合わせて信号をフィルターし,信号の質を向上させる
  4. モデルのポートフォリオを増やし,他の技術指標と組み合わせてトレンドを認識し,全体的な正確性を向上させる
  5. この戦略の模範を継承し,他のタイプの指数均線システムを開発し,適用範囲を広げること

これらの最適化により,戦略の安定性,適応性,および効果をさらに高めることができます.

要約する

移動平均線策は,単純な指数移動平均システムとパラメータ化区間を利用して,明確な取引ルールを形成し,容易に解釈し,実施し,典型的なトレンド追跡戦略の1つである.パラメータの調整と最適化により,この戦略はより良い効果を生むことができる.しかし,市場環境の影響を十分に考慮し,潜在的なリスクを防ぎ込むことも必要である.この戦略は,基礎テンプレートであり,その後の拡張と最適化には大きな余地がある.

ストラテジーソースコード
/*backtest
start: 2024-01-25 00:00:00
end: 2024-02-01 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 14/08/2020
// Moving Average Displaced Envelope. These envelopes are calculated 
// by multiplying percentage factors with their displaced expotential 
// moving average (EMA) core.
// How To Trade Using:
// Adjust the envelopes percentage factors to control the quantity and 
// quality of the signals. If a previous high goes above the envelope 
// a sell signal is generated. Conversely, if the previous low goes below 
// the envelope a buy signal is given.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Moving Average Displaced Envelope Backtest", shorttitle="MA DE", overlay = true)
Price = input(title="Source", type=input.source, defval=close)
Period =input(defval=9, minval=1)
perAb = input(title = "Percent above", defval=.5, minval=0.01, step = 0.1)
perBl = input(title = "Percent below", defval=.5, minval=0.01, step = 0.1)
disp = input(title = "Displacement", defval=13, minval=1) 
reverse = input(false, title="Trade reverse")
pos = 0
sEMA = ema(Price, Period)
top = sEMA[disp] * ((100 + perAb)/100)
bott = sEMA[disp]* ((100 - perBl)/100)
pos := iff(close < bott , 1,
	     iff(close > top, -1, pos[1])) 
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)	 
if (possig == 0) 
    strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )