
この戦略は,K線実体とシャドーラインの比率を計算して,価格の動力をベースに,RSI指標と組み合わせて,市場の超買い超売り状態を判断し,逆転の機会を探して取引する.主にショートライン取引に使用され,ショートラインの価格動向の逆転点を追跡して,より高い勝率を得る.
この戦略の核心的な論理は以下の通りです.
K線の実体比と影線比を計算する.各K線のopen,close,high,low価格を計算して,実体と影線が占める比率を導き出す.影線比が20%未満であれば,強いK線とみなす.
K線強度変化比率を計算する.各K線内の価格変化幅を計算し,K線の強弱を判断する.変化幅が大きい場合,動力が強いことを示し,強いK線として判断する.
RSI指標を組み合わせて超買超売を判断する.RSIの超買線と超売線を設定する.RSIが超買線を上回ると超買,RSIが超売線を上回ると超売となる.超買超売状態の強いK線は,反転の確率が高い.
判断逆転信号:影線比率が20%未満で,K線強さが平均値の2倍以上で,上記のK線の閉盘値が現在のK線より高く,逆転条件を満たしていることを示す空白;逆に,閉盘値が現在のK線より低い場合は空白する.
ストップ・ストップ設定:多空信号に対して固定比例のストップ・ストップとストップ・ストップをそれぞれ設定する.
この戦略の利点は以下の通りです.
K線実体と影線の比率を利用してトレンドと逆転を判断する能力が強い。価格の勢力と逆転点を効果的に判断できる。
K線強度の変化とRSI指標を組み合わせて,反転信号の判断精度が高い。RSIのパラメータは調整可能であり,最適化スペースは大きい。
ストップ・ロスト・ストップの設定は合理的で,ショートラインの機会を把握し,単一取引のリスクを低減する.
戦略パラメータの調整は柔軟で,異なる品種,周期に最適化され,実用性が強い.
この戦略には以下のリスクがあります.
強い突破時には,偽信号が生み出され,取引が失敗する可能性がある。K線比喩周期とRSIパラメータを最適化することで減少することができる。
逆転の失敗の可能性も存在し,多が下落する行情と空が上昇する行情は両立される.適切なストップ・ロスを調整し,損失を減らす.
効果は取引品種と時間周期に関係する.波動性が不安定な品種については慎重にこの戦略を使用する.
この戦略は以下の点で最適化できます.
K線比較の根数を最適化して,超買超売を判断する周期パラメータの組み合わせを探します.
RSIの超買超売ラインを最適化し,異なる品種に対してより良いパラメータを決定する.
異なるストップ・ストップ比率の設定をテストし,最適なストップ・ストップ戦略を決定する.
戦略パラメータをターゲットにするために,取引品種を波動率でグループ化して最適化します.
他の指標判断やフィルタリング条件を追加し,戦略の安定性を向上させる.
この戦略は,全体的に非常に実用的で,K線情報への適用によって価格勢力の逆転点を判断し,典型的なショートライン取引戦略である.最適化スペースは大きく,異なる品種と取引環境に合わせて調整することができ,追跡中のショートライン価格トレンドの面で効果が優れている.しかし,ストップ防止とリスク管理に注意する必要がある.
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("mecha larga study",overlay = true, max_bars_back = 600)
//Porcentaje Mecha cuerpo
bodyPercent = math.abs(open - close) / (high - low) * 100
wickPercent = 100 - bodyPercent
plot(bodyPercent, "Porcentaje del cuerpo", color.rgb(163, 76, 175))
plot(wickPercent, "Porcentaje de la mecha", color.red)
VelaDeFuerza = math.abs(((high[0] - low[0])*100)/high)//PORCENTAJE DE VARIACION DE UNA VELA
plot(VelaDeFuerza, color = color.purple)
Promedio = ((VelaDeFuerza[0] + VelaDeFuerza[1] + VelaDeFuerza[2] + VelaDeFuerza[3] + VelaDeFuerza[4] + VelaDeFuerza[5] + VelaDeFuerza[6] + VelaDeFuerza[7] + VelaDeFuerza[8] + VelaDeFuerza[9] + VelaDeFuerza[10] + VelaDeFuerza[11] + VelaDeFuerza[12] + VelaDeFuerza[13] + VelaDeFuerza[14] ) / 15)
plot(Promedio, color = color.yellow)
// rsi
per_Rsi = input.int(14, "Periodo RSI",minval= 11, maxval=20) //inicializo el rsi en 14 periodos pero doy la posibilidad al usuario de cambiarlo
rsi_Sc = input.int(75,"Sobre Compra",minval=68,maxval=80) //ENTRADA DE SOBRE COMPRA DE RSI
rsi_Sv = input.int(25,"Sobre Venta",minval=20,maxval=33) //ENTRADA DE SOBRE VENTA DE RSI
rsi= ta.rsi(close,per_Rsi)//guardo el rsi con los paramentros anteriores en una variable
//logica
MayorPromedio = Promedio + 0.800
plot(MayorPromedio, color = color.green)
Venta = bodyPercent > 80 and VelaDeFuerza > Promedio * 2 and close < close[1]
Compra = bodyPercent > 80 and VelaDeFuerza > Promedio * 2 and close > close[1]
precioVenta = Venta? close : na
precioCompra = Compra? close : na
tp1 = 0.00
sl = 0.00
tp1 := 0.003
sl := 0.010
TP1short = precioVenta - (precioVenta * tp1)
Slshort = precioVenta + (precioVenta * sl)
TP1long = precioCompra + (precioCompra * tp1)
SLlong = precioCompra - (precioCompra * sl)
name1 = "tp1"
name2 = "tp2"
name3= "SL"
if ( precioVenta )
strategy.entry("short", strategy.short , comment = "Sell SL: " + str.tostring(Slshort, "0.000") + " TP1: " + str.tostring(TP1short,"0.000") )
strategy.exit("exit" , "short", stop = Slshort , limit = TP1short ,qty_percent = 100 )
if ( precioCompra )
strategy.entry("long", strategy.long , comment = "Buy SL: " + str.tostring(SLlong, "0.000") + " TP1: " + str.tostring(TP1long,"0.000") )
strategy.exit("exit" , "long", stop = SLlong , limit = TP1long ,qty_percent = 100 )