이 전략은 간단한 K-라인 패턴 판단 규칙을 설정하여 테슬라의 4 시간 라인에 긴 포지션 브레이크아웃 거래를 실현합니다. 전략은 간단한 구현, 명확한 논리, 이해하기 쉬운 등의 장점이 있습니다.
전략의 핵심 판단 논리는 다음과 같은 4 K-라인 패턴 규칙에 기초합니다.
모든 4가지 규칙이 동시에 충족되면 긴 포지션 개척 작업이 수행됩니다.
또한, 전략은 가격 트리거가 손실을 멈추거나 수익을 취하는 조건을 설정할 때 포지션을 닫기 위해 스톱 로스를 설정하고 수익을 취합니다.
이 전략은 다음과 같은 장점을 가지고 있습니다.
주목해야 할 주요 위험은 다음과 같습니다.
위험 감소를 위해 다음과 같은 방법을 채택할 수 있습니다.
전략의 잠재적인 최적화 방향은 다음과 같습니다.
이 전략은 간단한 K-라인 패턴 규칙을 사용하여 긴 돌파구 거래를 실현합니다. 개선할 여지가 있지만 단순성과 직관성 측면에서 초보자가 이해하고 사용할 수있는 매우 적합한 긴 포지션 전략입니다. 지속적인 최적화로 전략 성능이 더욱 향상 될 수 있습니다.
/*backtest start: 2023-12-01 00:00:00 end: 2023-12-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © TheQuantScience //@version=5 strategy("SimpleBarPattern_LongOnly", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, currency = currency.EUR, initial_capital = 1000, commission_type = strategy.commission.percent, commission_value = 0.03) // Make input options that configure backtest date range startDate = input.int(title="Start Date", defval=1, minval=1, maxval=31) startMonth = input.int(title="Start Month", defval=1, minval=1, maxval=12) startYear = input.int(title="Start Year", defval=2017, minval=1800, maxval=2100) endDate = input.int(title="End Date", defval=8, minval=1, maxval=31) endMonth = input.int(title="End Month", defval=3, minval=1, maxval=12) endYear = input.int(title="End Year", defval=2022, minval=1800, maxval=2100) // Look if the close time of the current bar // Falls inside the date range inDateRange = true // Setting Conditions ConditionA = low < open ConditionB = low < low[1] ConditionC = close > open ConditionD = close > open[1] and close > close[1] FirstCondition = ConditionA and ConditionB SecondCondition = ConditionC and ConditionD IsLong = FirstCondition and SecondCondition TakeProfit_long = input(4.00) StopLoss_long = input(4.00) Profit = TakeProfit_long*close/100/syminfo.mintick Loss = StopLoss_long*close/100/syminfo.mintick EntryCondition = IsLong and inDateRange // Trade Entry&Exit Condition if EntryCondition and strategy.opentrades == 0 strategy.entry(id = 'Open_Long', direction = strategy.long) strategy.exit(id = "Close_Long", from_entry = 'Open_Long', profit = Profit, loss = Loss)