複数の指標による買取・売却戦略

作者: リン・ハーンチャオチャン, 日付: 2023年10月18日 11:36:38
タグ:

img

概要

この戦略は,移動平均値,過買い過売り率,変動率の指標を組み合わせ,過買い時のダウンで購入し,過買い時の上昇で販売し,トレンドを追跡します.

戦略の論理

RSIとストックが両方が過剰販売/過剰購入ゾーンにあり,AOオシレーターが逆転信号を示しているときにポジションを取ります.特に,RSIとストックが低値 (30以下と20以下) で,AOがマイナスからポジティブに変わるときはロング;RSIとストックが高い値 (70以上と80以上) で,AOがポジティブからマイナスに変わるときはショートします.市場変動に応じて損失/利益レベルを調整するために,ATR値に基づいてストップ・ロスを設定し,利益を取ります.

戦略は主に4つの指標を使用しています.

  • AOオシレーター: 価格動向を反映し,トレンド逆転を特定するために使用できます.
  • RSI: 過買い/過売りレベルを反映する.30以下は過売りゾーンである.
  • ストック:過買い/過売りゾーンを表す.20未満は過売りゾーンである.
  • ATR:最近の価格変動を反映する.

AOが逆転信号を示し,RSIとストックが両方が過売り/過買いゾーンにある場合,価格は逆転する可能性があります.この時点でポジションを取ります.不安定性に基づいて損失/利益範囲を調整することで罠にはまらないように,ストップ損失を設定し,利益価格を設定するためにATRを使用します.

利点

  • シグナルを確認するために複数の指標を使用し,単一の指標から間違った取引を避ける.
  • 単一の損失を制御するために,変動に基づいてストップ損失/利益を設定します.
  • シンプルで明快な論理で 分かりやすく実行できます
  • 買い過ぎ/売り過ぎの状況を利用して逆転を把握する.

リスク と 解決策

  • 誤った取引を避けるために RSIとストックと組み合わせる必要がある.
  • 固定パラメータは市場の変化に適応できない可能性があります.パラメータを最適化する必要があります.
  • ストップ・ロスは近すぎると頻繁にストップを起こす.ストップ範囲を緩めたり,出口戦略を使用したりする.
  • 固定テイク利益は早すぎたり遅すぎたりする.適応テイク利益または部分的な出口を使用することができます.

リスクを減らすために,以下の側面を最適化してください.

  1. パラメータを最適化し,異なる期間や機器に対応する.
  2. ストップ・ロスト・メソッドを改良する
  3. 誤った信号を避けるために 入力ルールを最適化します
  4. 傾向によってセグメント化します 変化の傾向によってセグメント化します

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

戦略に最適化できる側面は以下の通りです.

  1. パラメータの設定を最適化する

  2. 誤った信号を避けるため 入口時にフィルター条件を追加します

  3. ストップ・ロスの方法を最適化します

  4. アダプティブ・テイク・プロフィートのような方法で

  5. 引き下げを避けるために キーレベル近くで自動取利益を追加します

  6. 資金管理を最適化し,リスクに応じてポジションサイズを調整する

  7. パラメータとストップ/利益レベルをテストし最適化する

  8. ニュースや急激な損失を回避するような 極端な出来事を処理します

概要

この戦略は,移動平均値,過買い過売,波動性システムを組み合わせて,低価格で購入し,高価格で販売し,強いトレンドを追求する能力を備えています.しかし,固定パラメータや不適切なストップ損失などのいくつかの問題があります.パラメータ調節,ストップ損失を改善し,フィルターを追加し,より堅牢にするなどのさまざまな側面から最適化することができます.実際の取引では,有効性と収益性を最大化するために,特定のツールと期間に基づいてテストし最適化する必要があります.


/*backtest
start: 2023-09-17 00:00:00
end: 2023-10-17 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4

strategy("Buy&Sell Strategy depends on AO+Stoch+RSI+ATR by SerdarYILMAZ", shorttitle="Buy&Sell Strategy")
// Created by Serdar YILMAZ
// This strategy is just for training, its purpose is just learning code in pine script.
// Don't make buy or sell decision with this strategy.
// Bu strateji sadece pine script'te kodlamanın nasıl yapildigini ogrenmek icindir.
// Bu stratejiye dayanarak, kesinlikle al-sat islemleri yapmayin.

//AO

fast=input(title="Fast Length",type=input.integer,defval=5)
slow=input(title="Slow length",type=input.integer,defval=34)

awesome=(sma(hl2,fast)-sma(hl2,slow))*1000

plot(awesome, style=plot.style_histogram, color=(awesome>awesome[1]?color.green:color.red))

//Stoch

K=input(title="K",type=input.integer,defval=14)
D=input(title="D",type=input.integer,defval=3)
smooth=input(title="smooth",type=input.integer,defval=3)

k=sma(stoch(close,high,low,K),D)
d=sma(k,smooth)

hline(80)
hline(20)

plot(k,color=color.blue)

//RSI

rsisource=input(title="rsi source",type=input.source,defval=close)
rsilength=input(title="rsi length",type=input.integer,defval=10)

rsi=rsi(rsisource,rsilength)

hline(70,color=color.orange)
hline(30,color=color.orange)

plot(rsi,color=color.orange)

//ATR

atrlen=input(title="ATR Length", type=input.integer,defval=14)

atrvalue=rma(tr,atrlen)

plot(atrvalue*1000,color=color.green)

LongCondition=k<20 and rsi<30 and awesome>awesome[1]
ShortCondition=k>80 and rsi>70 and awesome<awesome[1]
if (LongCondition)
    stoploss=low-atrvalue
    takeprofit=close+atrvalue
    strategy.entry("Long Position", strategy.long)
    strategy.exit("TP/SL",stop=stoploss,limit=takeprofit)
    
if (ShortCondition)
    stoploss=high+atrvalue
    takeprofit=close-atrvalue
    strategy.entry("Short Position",strategy.short)
    strategy.exit("TP/SL",stop=stoploss,limit=takeprofit)
    
    

    
    




もっと