この戦略は,技術指標に基づいたイントラデイ・ブイッシュ・トレーディング戦略である.主に3つの技術指標を使用して,ロングエントリーのタイミングを決定する. 1.スイングロー 2.ブイッシュ・キャンドルスティックパターン 3.極端な過剰販売.同時に,ストップ・ロストとテイク・プロフィート価格を計算するためにATR (平均真範囲) インディケーターを使用する.この戦略は,すべてのタイムフレームおよびすべての底辺資産に適用される.
この戦略は主に以下の原則に基づいています.
このイントラデイ・ブイッシュ・ブレイクアウト戦略は,スイング・ロー,ブイッシュ・パターン,オーバーセール・リバーサルに基づいた定量的な取引戦略である.異なる角度からロングエントリーポイントを捕捉するために3つの技術指標を使用する.同時に,動的ストップ・ロストとテイク・プロフィートレベルを計算するためにATR波動性指標を使用する.上向きの利潤を完全に捕捉できるが,波動的な市場で頻繁な取引のリスクに直面する.戦略は,傾向判断を導入し,パラメータと指標を最適化し,戦略のパフォーマンスをさらに改善するための最適化余地がある.
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © LuxTradeVenture //@version=5 strategy("Intraday Bullish Script", overlay=true, margin_long=100, margin_short=100) // Settings for Strategy 1 entryCondition1 = input.bool(true, title="Use Entry Condition - Strategy 1") // Input for ATR multiplier for stop loss atrMultiplierforstoploss = input.float(2, title="ATR Multiplier for Stop Loss") // Input for ATR multiplier for target price atrMultiplierforlongs = input.float(4, title="ATR Multiplier for Target Price") // Calculate ATR atrLength = input.int(14, title="ATR Length") atrValue = ta.atr(atrLength) // Swing low condition - Strategy 1 swingLow1 = low == ta.lowest(low, 12) or low[1] == ta.lowest(low, 12) /// maj_qual = 6 //input(6) maj_len = 30 //input(30) min_qual = 5 //input(5) min_len = 5 //input(5) lele(qual, len) => bindex = 0.0 bindex := nz(bindex[1], 0) sindex = 0.0 sindex := nz(sindex[1], 0) ret = 0 if close > close[4] bindex := bindex + 1 bindex if close < close[4] sindex := sindex + 1 sindex if bindex > qual and close < open and high >= ta.highest(high, len) bindex := 0 ret := -1 ret if sindex > qual and close > open and low <= ta.lowest(low, len) sindex := 0 ret := 1 major = lele(maj_qual, maj_len) minor = lele(min_qual, min_len) ExaustionLow = major == 1 ? 1 : 0 Bullish3LineStrike = close[3] < open[3] and close[2] < open[2] and close[1] < open[1] and close > open[1] // Entry and Exit Logic for Strategy 2 // Create variables to track trade directions and entry prices for each strategy var int tradeDirection1 = na var float entryLongPrice1 = na // Calculate entry prices for long positions - Strategy 1 if (swingLow1 or Bullish3LineStrike) entryLongPrice1 := close tradeDirection1 := 1 // Calculate target prices for long positions based on ATR - Strategy 1 targetLongPrice1 = entryLongPrice1 + (atrMultiplierforlongs * atrValue) // Calculate stop loss prices for long positions based on entry - Strategy 1 stopLossLongPrice1 = entryLongPrice1 - (atrMultiplierforstoploss * atrValue) // Entry conditions for Strategy 1 if (tradeDirection1 == 1 and (swingLow1 or Bullish3LineStrike)) strategy.entry("Long - Strategy 1", strategy.long) // Exit conditions for long positions: When price reaches or exceeds the target - Strategy 1 if (close >= targetLongPrice1) strategy.close("Long - Strategy 1", comment="Take Profit Hit") // Exit conditions for long positions: When price hits stop loss - Strategy 1 if (close <= stopLossLongPrice1) strategy.close("Long - Strategy 1", comment="Stop Loss Hit")