
이 전략은 5분 시간 프레임에 적용되는 이치모쿠 1순위 평형표에 기반한 빠른 돌파 스칼핑 전략이다. 이 전략은 이치모쿠의 전환선, 기준선, 최전선 A/B 등의 요소를 최대한 활용하여 시장의 단기 동력을 포착한다. 이 전략은 전통적인 이치모쿠 전략과 달리, 이 전략은 파라미터를 최적화하여 더 높은 주파수 거래에 적합하다.
전략의 주요 아이디어는 전환선에서 기준선을 넘거나 넘을 때 과잉 또는 공백을 수행하고 가격이 클라우드 도표의 두 가지 전방선을 뚫어야 함으로써 트렌드 방향을 더 정확하게 판단 할 수 있습니다. 동시에, 전략은 위험을 제어하기 위해 중지 손실 및 중지 위치를 정의합니다.
이 전략은 주로 이치모쿠의 전환선과 기준선을 기반으로 구성되어 있다. 전환선 반응 가격의 단기 동력 변화, 기준선 반응 중기 경향.
구체적으로, 전환선 상에서 기준선을 통과할 때 다중 신호가 발생하고, 이 때 가격이 클라우드 그래프의 두 전선 A와 B보다 높게 요구되며, 이를 통해 돌파를 보장할 수 있다. 반대로, 전환선 아래에서 기준선을 통과할 때 공백 신호가 발생하고, 가격을 클라우드 그래프의 두 전선보다 낮게 요구하며, 돌파를 보장할 수 있다.
또한, 전략은 두 개의 변수 percentStop와 percentTP를 정의하고 있으며, 각각 중단 비율과 중지 비율을 나타냅니다. 이 두 가지 값은 거래자의 위험 선호도에 따라 설정할 수 있습니다. 중지 및 중지 가격은 포지션 개시 평균 가격에 따라 계산됩니다.
오이즈 또는 하위 신호가 발동되면, 해당 스톱로스 명령과 스톱 명령도 발동된다. 가격이 스톱로스 또는 스톱 손실 수준을 만지면, 해당 포지션은 평정된다.
이 전략은 전통적인 이치모쿠 전략에 비해 다음과 같이 최적화되었습니다.
이러한 매개 변수 조정으로 전략이 5분 정도의 높은 주파수 거래 시간대에 더 적합하게 되어 지역 극한점 근처의 역전 기회를 빠르게 판단할 수 있다. 동시에 클라우드 그래프와 결합하여 장기 단기 경향을 판단하는 데 효율성이 높아진다.
또한 이 전략은 직접 내장된 스톱로스 스톱 로직으로, 거래자가 직접 추가할 필요가 없으며, 위험을 편리하게 관리할 수 있으며, 초보자에게 적합하다.
이 전략의 주요 위험은 다음과 같습니다.
위험을 통제하기 위해 다음과 같은 방법을 고려할 수 있습니다.
이 전략에는 다음과 같은 최적화 방안이 있습니다.
이러한 최적화는 전략이 더 많은 시장 환경에서 안정적인 성능을 유지할 수 있게 해준다.
이 이치모쿠 스칼핑 전략은 전통적인 매개 변수를 조정하여 고주파 연산에 더 적합하게 만든다. 전환선, 기준선 및 클라우드 그래프의 판단을 결합하면 단기 트렌드를 빠르게 잡을 수 있다. 내장된 스톱 스톱 손실 메커니즘도 위험 관리를 용이하게 한다.
이 전략에는 장점이 있지만, 역전 전략의 전형적인 위험도 존재한다. 이후에는 변동률, 기계 학습, 이벤트 드라이브 등 여러 측면에서 최적화하여 전략이 더 안정적으로 복잡한 환경에 적응할 수 있도록 한다.
/*backtest
start: 2023-11-11 00:00:00
end: 2023-12-11 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy(title="Scalping Ichimoku Strategy", shorttitle="Scalp Ichimoku", overlay=true)
showBB = input(true, "Show Ichimoku Cloud")
showTrade = input(true, 'Show TP/SL')
conversionPeriods = input(9, "Conversion Line Periods")
basePeriods = input(26, "Base Line Periods")
spanBPeriods = input(52, "Span B Periods")
displacement = input(26, "Displacement")
conversionLine = (ta.highest(high, conversionPeriods) + ta.lowest(low, conversionPeriods)) / 2
baseLine = (ta.highest(high, basePeriods) + ta.lowest(low, basePeriods)) / 2
leadLine1 = (conversionLine + baseLine) / 2
leadLine2 = (ta.highest(high, spanBPeriods) + ta.lowest(low, spanBPeriods)) / 2
plot(showBB ? conversionLine : na, "Conversion Line", color=#2962FF)
plot(showBB ? baseLine : na, "Base Line", color=#B71C1C)
plot(showBB ? ta.lowest(low, 52) : na, "Lagging Span", color=#43A047, offset=-displacement)
p1 = plot(showBB ? leadLine1 : na, "Leading Span A", color=#A5D6A7, offset=displacement)
p2 = plot(showBB ? leadLine2 : na, "Leading Span B", color=#EF9A9A, offset=displacement)
fill(p1, p2, color=leadLine1 > leadLine2 ? color.new(color.green, 90) : color.new(color.red, 90))
// Define the shorter Stop Loss and Take Profit percentages for scalping
percentStop = input(0.5, "Stop Loss (%)")
percentTP = input(1.0, "Take Profit (%)")
// Define the entry conditions
longCondition = ta.crossover(conversionLine, baseLine) and close > leadLine1 and close > leadLine2
shortCondition = ta.crossunder(conversionLine, baseLine) and close < leadLine1 and close < leadLine2
if (longCondition)
strategy.entry("Long", strategy.long)
strategy.exit("Take Profit or Stop Loss for Long", "Long", stop=strategy.position_avg_price * (1 - percentStop / 100), limit=strategy.position_avg_price * (1 + percentTP / 100))
if (shortCondition)
strategy.entry("Short", strategy.short)
strategy.exit("Take Profit or Stop Loss for Short", "Short", stop=strategy.position_avg_price * (1 + percentStop / 100), limit=strategy.position_avg_price * (1 - percentTP / 100))