ハラミ逆転逆テスト戦略

作者: リン・ハーンチャオチャン,日付: 2023-11-23 11:47:10
タグ:

img

概要

熊本ハラミ逆転バックテスト戦略は,キャンドルストックチャートで熊本ハラミ逆転パターンを特定し,自動的に取引する.熊本ハラミパターンを検出するとショートになり,ストップ・ロストまたはテイク・プロフィートが起動するとポジションを閉じる.

戦略の論理

この戦略のコアパターン認識指標は:最初のキャンドルの閉じるのは長い上昇キャンドルで,第2キャンドルの閉じるのは最初のキャンドルの体内にあり,下落キャンドルを形成する.これは潜在的な下落ハラミ逆転パターンを示しています.このパターンが形成されると,戦略は短くなります.

具体的な論理は

  1. 最初のキャンドルABSのボディサイズが設定された最小ボディサイズより大きい場合を計算します ((Close1 - Open1)
  2. 最初のキャンドルが上昇しているかどうかを確認します Close1 > Open1
  3. 現在のキャンドルが下落傾向にあるかどうかを確認します. オープン > 閉鎖
  4. 現在のキャンドルの開いているかどうかをチェックします. 前の閉じるよりも小さいか等しいか オープン <= 閉じる1
  5. 前のキャンドルの開いたが,現在のキャンドルの閉じるより小さいか等しいかを確認します Open1 <= Close
  6. 現在のキャンドルのボディが前のボディより小さいかどうかを確認します
  7. すべての条件が満たされれば 熊のハラミが形成され 戦略は失敗します

利点分析

この戦略の利点は次のとおりです.

  1. ハラミの強烈な下落逆転信号を利用し,より高い利益率を得ます.
  2. 広範なバックテストデータの結果は陽性です
  3. シンプルでわかりやすい論理
  4. リスク管理のためのストップ・ロストと得益調整可能

リスク分析

リスクもあります:

  1. ストップ・ロスを拡大したり フィルターを追加したりできます
  2. 高波動は早めにストップロスを引き起こす可能性があります.低波動性製品を選択してください.
  3. バックテストデータが十分でない場合,実際の市場状況が反映されない可能性があります.テストデータのサイズを増やし,ライブ取引で検証する必要があります.

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

この戦略は,次の分野においてさらに最適化できます.

  1. 信号品質を改善するためにボリューム,MACD,その他のフィルターを追加します.
  2. ストップ・ロスの戦略を最適化し,収益を上げ,レベルを動的に調整する
  3. 不効率な取引を減らすために,トレンドやその他の要因と組み合わせて,ポジション保持効率を高める
  4. 低波動性の代替品を見つけるために異なる取引製品をテストする

結論

ベアッシュ・ハラミ逆転バックテスト戦略は,明確な論理,理解しやすい論理,良好なバックテスト結果,制御可能なリスクを持っています. ライブ取引の調整と最適化のための余地があります. 全体的に,取引信号は信頼性があり,ライブ取引でさらなる最適化と検証に値します.


/*backtest
start: 2023-11-15 00:00:00
end: 2023-11-19 23:00:00
period: 15m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 16/01/2019 
//    This is a bearish reversal pattern formed by two candlesticks in which a short 
//    real body is contained within the prior session's long real body. Usually the 
//    second real body is the opposite color of the first real body. The Harami pattern 
//    is the reverse of the Engulfing pattern. 
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title = "Bearish Harami Backtest", overlay = true)
input_takeprofit = input(20, title="Take Profit pip")
input_stoploss = input(10, title="Stop Loss pip")
input_minsizebody = input(3, title="Min. Size Body pip")
barcolor(abs(close- open) >= input_minsizebody ? close[1] > open[1] ? open > close ? open <= close[1] ? open[1] <= close ? open - close < close[1] - open[1] ? yellow :na :na : na : na : na : na)
pos = 0.0
barcolor(nz(pos[1], 0) == -1 ? red: nz(pos[1], 0) == 1 ? green : blue )
posprice = 0.0
posprice := abs( close - open) >= input_minsizebody? close[1] > open[1] ? open > close ? open <= close[1] ? open[1] <= close ? open - close < close[1] - open[1] ? close :nz(posprice[1], 0) :nz(posprice[1], 0) : nz(posprice[1], 0) : nz(posprice[1], 0) : nz(posprice[1], 0): nz(posprice[1], 0)
pos := iff(posprice > 0, -1, 0)
if (pos == 0) 
    strategy.close_all()
if (pos == -1)
    strategy.entry("Short", strategy.short)
posprice := iff(low <= posprice - input_takeprofit and posprice > 0, 0 ,  nz(posprice, 0))
posprice := iff(high >= posprice + input_stoploss and posprice > 0, 0 ,  nz(posprice, 0))


もっと