정말 훌륭합니다. 훌륭한 작업입니다, MetaQuotes. 스탠퍼드 대학교의 스티븐 보이드 교수와 그의 전설적인 시계열 연구가 이제 MQL5에 소개되었습니다.
정말 훌륭합니다. MetaQuotes, 잘하셨습니다. 스탠퍼드 대학교의 스티븐 보이드 교수님과 MQL5에서 그의 전설적인 시계열 연구 결과가 담겨 있군요.
감사합니다. 이 방법론에는 경계 문제가 없기 때문에, 거래에 유용하게 적용될 수 있습니다.
기사가 완성된 후, 추세 조정 시 거래량을 추가하는 것이 최선의 방법이라는 사실이 밝혀졌습니다(이 부분은 기사에서 다루지 않았습니다). 관련 전문가 자문가(EA)는 여기에서 확인하세요: MA, MACD, ADX, EMA.
추세 조정 시 거래량을 추가하는 Expert Advisors:
- 2026.04.10
- www.mql5.com
이 스크립트는 다양한 람다 값(λmax 단위로 정의된 lambda_factors = {1.0, 0.8, 0.5, 0.2, 0.1, 0.01, 0.001})에 대한 L1 추세 필터링을 보여줍니다.
https://forge.mql5.io/quantum/L1Trend 에서 다른 예제를 확인해 보세요 .
- quantum
- forge.mql5.io
추세 분리는 정규화 매개변수 lambda에 매우 크게 좌우됩니다. lambda가 작을수록 더 짧은 추세를 포착할 수 있습니다.
여기서 살펴본 예시에서는 lambda=0.2*lambda_max 단위의 고정된 lambda 값이 사용되었습니다. 람다_맥스(lambda_max) 단위로 계산하면 데이터에 부분적으로 적응할 수 있습니다. 람다_맥스(lambda_max) 값 자체는 시계열의 기하학적 특성(상대적 변동폭), 즉 변동성에 따라 달라집니다.
추세에는 다양한 단계와 고유한 수명 주기가 있다는 점을 염두에 두어야 합니다. 따라서 현재 추세에 맞춰 조정할 수 있는 메커니즘, 즉 람다를 관리하고 최적의 추세 분할을 찾아내는 방법이 필요하지만, 이 과제는 아직 해결되지 않았습니다.
해당 시간대에서 전략 자체가 수익을 내지 못한다면, 필터도 도움이 되지 않을 것입니다.
가장 좋은 결과는 이상적인 추세 시장에서 나와야 하며, 예시는 다음과 같았습니다: EURUSD, 2025, H1 (최적의 이동평균 매개변수: period=61).



L1 종가 필터

여기서 우리는 청산 필터가 추세 구간에서 수익을 늘리는 데 도움이 되었음을 확인할 수 있습니다.
조정 구간에서 포지션을 추가한 동일한 전략의 변형:

추가 없이:
추가 시:

횡보장 구간에는 국부적인 소규모 추세가 포함되어 있으며, 이를 올바르게 반영하려면 (출구 필터로 사용할 경우) 람다(lambda) 매개변수의 값을 더 작게 설정해야 합니다.
또한, 횡보장 구간에서 이동평균(MovingAverage) 매개변수의 최적값도 달라야 합니다. 즉, 두 번째 구간에서 이동평균의 최적 기간이 변경되었습니다(하지만 테스터에서 최적화할 때, 도출된 매개변수들은 전체 최적화 구간에서 다른 모든 매개변수들 중 가장 높은 수익을 냅니다).
플랫 내부의 국지적 추세에서 포지션(다양한 람다)을 추가하는 전략

필터 없음:

lambda=0.2*lambda_max 필터를 적용하고 조정 국면에서 포지션을 추가하는 경우:

lambda=0.001*lambda_max 필터를 적용하고 조정 구간에서 포지션을 추가한 경우:

lambda=0.2*lambda_max 필터를 적용하고 조정 구간에서 포지션을 추가한 방식이 필터가 없는 방식보다 더 나은 결과를 보여주었습니다.
플랫 구간 내부의 국소적인 소규모 추세(lambda=0.001*lambda_max)에 대한 조정 시 매수 추가를 적용함으로써, 필터가 없는 원래 전략의 수익을 높일 수 있었으며(lambda=0.2*lambda_max를 적용한 전략의 수익도 개선되었습니다).
플랫 내부의 국지적 추세에서 포지션을 추가하는 방법 (다양한 람다)
필터 없음:
lambda=0.2*lambda_max 필터를 적용하고 조정 구간에서 포지션을 추가하는 경우:
lambda=0.001*lambda_max 필터를 적용하고 보정값을 더한 경우:
lambda=0.2*lambda_max인 필터를 적용하고 보정값에 추가한 변형이 필터를 적용하지 않은 변형보다 더 나은 결과를 보여주었다.
플랫 구간 내의 국소적인 소규모 추세(lambda=0.001*lambda_max)를 보정에 추가함으로써, 필터가 없는 원래 전략의 수익을 높일 수 있었으며(lambda=0.2*lambda_max를 적용한 변형의 수익도 개선할 수 있었다).
적어도 데모 계좌로라도 거래해 보세요
경험을 쌓고 10개월간의 무익한 작업을 견뎌내면 이해가 올 것입니다
벡터에 대한 두 가지 새로운 기능을 소개해 주셔서 감사합니다. 정말 유용하네요. 많은 노력을 기울이셨지만, 안타깝게도 모든 지표가 심하게 재그리딩 현상이 발생합니다. 심지어 과거 데이터에서도 고점이 반대 방향으로 바뀌거나 사라지기도 합니다. 이 지표들을 재그리팅 현상이 있는 호드릭-프레스콧 필터와 비교하신 데는 일리가 있습니다 . 중심 조정된 TMA나 다른 몇 가지 지표와도 비교할 수 있겠네요. 더 긴 시간대에서는 300캔들 전으로 거슬러 올라가서 추세 전환점이 나타날 수 있어, 1년 동안(예금을 날리며) 추세와 반대 방향으로 거래할 수도 있습니다. 실제 거래에서는 지표나 이를 기반으로 한 자동매매 시스템 모두 미래를 예측하려 하기 때문에 적합하지 않습니다.
사실 이러한 함수를 바탕으로 재그리지 않는 지표를 만들 수도 있습니다. 귀하의 지표의 경우, 단순히 1,000개의 캔들을 기다린 후 이전 기간의 끝에서 다시 계산을 하면 되지만, 이는 실제 적용에는 무용지물이며 더 흥미로운 대안들이 있습니다. 연구에 행운이 있기를 바랍니다.















새로운 기고글 MetaTrader 5에서 L1 추세 필터링 적용하는 법 가 게재되었습니다:
금융 시계열 데이터는 높은 잡음 수준, 잦은 이상치, 그리고 변화하는 시장 환경이라는 특징을 가지고 있습니다. 실제 트레이딩 시스템에서 이는 간단하고 측정 가능한 방식으로 나타납니다: 고전적인 "평활" 필터(이동 평균, HP)는 추세 변화에 뒤처지고 기울기 변화의 순간을 모호하게 하며 종종 단기적인 조정을 추세 반전으로 잘못 해석합니다 — 결과적으로 잘못된 진입/청산 횟수가 증가하고 수익계수가 감소하며 드로다운이 증가합니다. 또한 정규화 매개변수 λ의 선택은 일반적으로 수동 조정으로 축소되며 상품, 차트 주기 및 히스토리 길이에 따라 제대로 전달되지 않습니다.
이 글은 L1 추세 필터링을 기반으로 이러한 문제에 대한 실제적인 해결책을 제시합니다: 2차 차분의 L1 정규화를 이용한 최적화는 명시적인 분기점을 갖는 구분적 선형 근사치를 자동으로 생성합니다. 주요 이점은 변곡점을 커다란 추세의 변화로 명확하게 해석할 수 있다는 점, λmax를 계산하고 상대적 매개변수 λ = coef · λmax로 이동하여 정규화 규모를 설정할 수 있다는 점, 그리고 MQL5 구현에 적합한 선형적인 계산 복잡성을 갖는다는 점입니다.
이 글에서는 이론뿐만 아니라 완벽한 실무 로드맵을 제시합니다: 여기에는 λmax 및 L1 추세 계산을 위한 메서드, 세 가지 지표(추세, 기울기, 기울기 부호), 7가지 L1 추세 변동성 지표, Expert Advisors와의 통합, 그리고 재현 가능한 테스트 프로토콜(네 가지 필터링 모드, 잔고/자산 내보내기 및 시각화).
작성자: MetaQuotes