이 전략은
이 전략의 아이디어는 아론 라인의 창시자 투샤르 찬데에서 유래되었다. 찬데는 아론 오시일레이터가 50보다 높거나 낮을 때 상승 추세와 하락 추세를 식별 할 수 있다고 제안했다. 이것은 트렌딩이 아닌 기간에 간단한 아론 라인과 교차의 단점을 완화하는 데 도움이됩니다.
특히, 전략은 먼저 19기 Aroon Up, Aroon Down 라인 및 Aroon 오시일레이터를 계산합니다. 오시일레이터는 Up 라인에서 Down 라인을 빼서 계산됩니다. 중간 라인은 -25, 상부 레일 75 및 하부 레일 -85로 설정됩니다. 오시일레이터가 중간 라인을 넘으면 긴 포지션이 열립니다. 아래로 갈 때 짧은 포지션이 열립니다. 출구 조건은 오시일레이터가 상부 레일 위에 갈 때 길게 닫고 하부 레일 아래에 갈 때 짧게 닫습니다.
따라서, 중간선은 진입에 대한 트렌드 방향을 결정하는 데 사용되며, 상부와 하부 레일은 트렌드 반전 시 출퇴하는 데 사용되며, 아론 오시레이터 지표에 기반한 자동화 거래를 실현합니다.
전통적인 트렌드 다음 전략에 비해 이 전략은 다음과 같은 장점을 가지고 있습니다.
요약하자면, 아론 오시레터 지표의 강점을 결합함으로써 전략은 좋은 이윤율과 수익성을 가진 특정 자산의 자동 거래를 달성합니다.
이 전략에는 몇 가지 위험도 있습니다.
이러한 위험은 매개 변수를 조정하고 코드를 최적화함으로써 감소 및 개선 될 수 있습니다. 또한 적절한 위치 크기와 자금 관리는 잠재적 위험을 효과적으로 제어 할 수 있습니다.
전략 성과를 더 향상시키기 위해 다음과 같은 측면에서 최적화를 할 수 있습니다.
포괄적인 테스트와 최적화를 통해 전략의 안정성, 승률 및 수익성이 크게 향상 될 수 있습니다.
이 전략은 창의적으로 아론 오시일레이터 지표에 기반한 높은 변동성과 불분명한 추세를 가진 자산을 자동화 거래에 달성했다. 전통적인 트렌드 전략과 비교하면 이러한 유형의 자산에서 더 잘 수행되며 엄격한 거래 조건도 매개 변수 설정으로 달성됩니다. 전략의 장점은 주목할 만 여전히 개선의 여지가 있습니다. 목표 최적화를 통해 추가 향상도 얻을 수 있습니다. 전략은 양적 거래 관행에 대한 참조를 제공합니다.
/*backtest start: 2023-12-15 00:00:00 end: 2024-01-10 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 // by Saucius Finance https://saucius-finance.blogspot.com/ // copyrights reserved :) // This strategy derives form the consideration of the author, Tushar Chande, that, in "more patterns" paragraph, // long and short trends are identified by oscillator < or > line 50. // This helps because simple Aroon and Aroon crosses suffer in not trending periods. // original article avabile in:" Stocks & Commodities, V. 13:9 (369-374) : A Time Price Oscillator by Tushar Chande, Ph.D."" strategy("Aroon Oscillator strategy by Saucius", overlay=false) //building aroon lines, Embodying both Aroon line (Up and Down) and Aroon Oscillator length = input(19, minval=1) level_middle = input(-25, minval=-90, maxval=90, step = 5) levelhigh = input(75, minval=-100, maxval=100, step = 5) levellow = input(-85, minval=-100, maxval=100, step = 5) upper = 100 * (highestbars(high, length+1) + length)/length lower = 100 * (lowestbars(low, length+1) + length)/length oscillator = upper - lower plot(upper, title="Aroon Up", color=blue) plot(lower, title="Aroon Down", color=red) plot(oscillator, title="Aroon Oscillator", color = yellow) hline(level_middle, title="middle line", color=gray, linewidth=2) hline(levelhigh, title ="upper border", color=gray, linewidth=1) hline(levellow, title ="lower border", color=gray, linewidth=1) // Entry // entryl = oscillator[1] < level_middle[1] and oscillator > level_middle entrys = oscillator[1] > level_middle[1] and oscillator < level_middle strategy.entry("Long", true, when = entryl) strategy.entry("Short", false, when = crossunder (oscillator, level_middle)) // === EXIT=== exitL1 = oscillator[1] > levelhigh[1] and oscillator < levelhigh exitS1 = oscillator[1] < levellow[1] and oscillator > levellow strategy.close("Long", when=entrys) strategy.close("Short", when=entryl) strategy.close("Long", when= exitL1) strategy.close("Short", when= exitS1)