カマリラピホットポイント 突破と勢力の逆転 低吸収金十字戦略

作者: リン・ハーンチャオチャン, 日付: 2023-12-07 16:57:11
タグ:

img

概要

この戦略は,Camarillaのピボットポイントの突破信号と,RSI逆転指標を低吸収機会として組み合わせて,高度なモメンタム逆転低吸収戦略を形成する.価格がCamarillaのピボットポイントを突破すると,取引信号が生成される.低RSIはさらにデップ機会を確認する.これは高度なモメンタム逆転戦略に属する.

戦略原則

戦略のコア信号は,カマリラ・ピボットポイントから来る.カマリラ・ピボットポイントは,前日の価格範囲に基づいて計算され,S1からS5のピボットポイントとR1からR5のピボットポイントに分けられる.価格はS1のピボットポイントから上向きに突破したとき,購入信号が生成され,価格はR1のピボットポイントから下向きに突破したとき,販売信号が生成される.また,RSIインジケーターは,エントリー成功率を改善するために過売り状態にあるかどうかを判断するために使用される.

戦略は,まず昨日の最高価格,最低価格,閉値に基づいてカマリラピボットポイントを計算する.その後,閉値がピボットポイントを突破して取引信号を生成するかどうかを判断する.同時に,RSIインジケーターが低位位置にあるかどうかを決定する.30以下は過売れとみなされる.閉値がピボットポイントを突破し,RSIが30以下である場合にのみ,実際の取引信号が生成される.買い信号はS1ピボットポイントの上向き突破であり,販売信号はR1ピボットポイントの下向き突破である.

例えば,昨日の価格が10-11の間波動していた場合,今日の閉値が11.05 (S1ピホットポイント) を突破し,同時にRSIインジケーターが20を示している場合,買い信号が生成されます.今日の閉値が10.95 (R1ピホットポイント) を突破し,RSIが20を示している場合,売り信号が生成されます.したがって,この戦略は突破信号と過剰販売信号の利点を組み合わせます.

利点分析

この戦略の最大の利点は,過売りと逆転の機会を特定することである.カマリラピボットポイントは,価格の重要なサポートとレジスタンスポイントを把握する.逆転のタイミングを決定するためにRSI指標と組み合わせると,底部を正確に位置付け,上昇と低下を追いかけるのを避けることができます.これはより高度な突破戦略に属します.

また,ピボットポイントは,価格の変化をタイムリーに追いつくために動的に計算されます.パラメータ設定を必要とする伝統的な技術指標とは異なり.この戦略はピボットポイント分析の利点を受け継ぎ,より柔軟です.また,逆転の機会はかなり明確で,頻繁な誤った信号が現れないでしょう.

リスク分析

この戦略の最大のリスクは,価格が誤ったブレイクアウトを起こす可能性があることです.RSIインジケーターは過売状態を確認するために使用されますが,ピボットポイントを突破した後も価格が逆転する可能性があります.これはストップロスを打つ原因になります.

RSIインジケーターが失敗する危険性もある.RSIインジケーターが落ちても,RSIが30を下回らない場合,取引シグナルが形成されず,逆転の機会が逃れられる.このリスクに対処するために,RSIパラメータ設定を適切に最適化することができます.

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

戦略の次の側面を最適化することができる:

  1. RSIのパラメータを最適化します 過剰販売ラインをテストします 30の方が良いか 20の方が適切ですか?

  2. 組み合わせのための他の指標を追加します.例えば,KDJ指標は逆転信号の信頼性をさらに確認できます.

  3. カマリラのピボットポイントをテストする 偽脱出の確率を減らすために S1とR1のみを使用できます

  4. ストップ・ロスの戦略を最適化します.ATR指標に基づいてストップ・ロスを設定したり,ストップ・ロスのように突破ピボットポイントを追跡することができます.

  5. 異なるタイプの契約をテストする. 株式指数,外為,商品などの異なる種類の製品に適用できる. パラメータを調整する必要があります.

概要

この戦略は,高度なモメンタム逆転突破戦略に属している.カマリラピホットポイントを通じて突破信号を判断し,RSI指標を通じて過売り状態を決定する.この戦略の利点は逆転機会を特定することです.最大のリスクは価格の誤った突破です.パラメータとリスク管理を最適化することで,戦略の安定性と収益性がさらに向上することができます.


/*backtest
start: 2023-11-06 00:00:00
end: 2023-12-06 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 07/05/2020
// Pivot point studies highlight prices considered to be a likely turning point
// when looking at values from a previous period, whether it be daily, weekly, 
// quarterly or annual. Each pivot point study has its own characteristics on 
// how these points are calculated. 
//
// Red color = Sell
// Green color = Buy
//
// WARNING:
//  - For purpose educate only
//  - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Camarilla Pivot Points Backtest", shorttitle="CPP", overlay = true)
res = input(title="Resolution", type=input.resolution, defval="D")
SellFrom = input(title="Sell from ", defval="R1", options=["R1", "R2", "R3", "R4", "R5"])
BuyFrom = input(title="Buu from ", defval="S1", options=["S1", "S2", "S3", "S4", "S5"])
reverse = input(false, title="Trade reverse")
xHigh  = security(syminfo.tickerid,res, high)
xLow   = security(syminfo.tickerid,res, low)
xClose = security(syminfo.tickerid,res, close)
xXLC3 = (xHigh+xLow+xClose) / 3
xRange = xHigh-xLow
S1 = xClose - xRange * (1.1 / 12)
S2 = xClose - xRange * (1.1 / 6)
S3 = xClose - xRange * (1.1 / 4)
S4 = xClose - xRange * (1.1 / 2)
R1 = xClose + xRange * (1.1 / 12)
R2 = xClose + xRange * (1.1 / 6)
R3 = xClose + xRange * (1.1 / 4)
R4 = xClose + xRange * (1.1 / 2)
R5 = (xHigh/xLow) * xClose
S5 = xClose - (R5 - xClose)
pos = 0
S = iff(BuyFrom == "S1", S1, 
      iff(BuyFrom == "S2", S2,
       iff(BuyFrom == "S3", S3,
         iff(BuyFrom == "S4", S4,
          iff(BuyFrom == "S5", S5, 0)))))
B = iff(SellFrom == "R1", R1, 
      iff(SellFrom == "R2", R2,
       iff(SellFrom == "R3", R3,
         iff(SellFrom == "R4", R4,
          iff(SellFrom == "R5", R5, 0)))))
          
pos := iff(close > B, 1,
       iff(close < S, -1, nz(pos[1], 0))) 
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 )

もっと