일부는 수익이 나고, 대부분은 나지 않으며, 나는 것도 대체로 수수합니다. AIStrategyMiner Strategy Builder 갤러리에서 측정된 엑스퍼트 어드바이저 설계 53개를 똑같은 하나의 MT5 검증 조건으로 돌렸습니다. 11개가 프로핏 팩터 1.00 이상으로 끝났고, 42개는 그 아래로 끝났으며, 중앙값은 0.92였습니다. Builder가 빌드를 합격시킬 때 쓰는 기준을 넘은 설계는 하나였습니다. 수익성은 특정 시장의 특정 구간에서 비용을 뺀 뒤 특정 규칙이 갖는 성질이지, ‘EA’라는 범주가 갖는 성질이 아닙니다.

다만 다음에 따라 달라집니다.
- 이름이 아니라 규칙. 53개 중 29개가 0.90에서 0.99 사이로 끝났습니다. 거래는 하고, 거의 본전에 가깝고, 천천히 잃습니다.
- 어떤 구간을 재는가. 가장 좋은 설계는 검증한 해에 1.23을 기록했습니다. 별도로 한 H1 재검증에서 같은 기본 설정은 2018–21년에 0.99였습니다.
- 설정을 어떻게 골랐는가. 기록된 파라미터 탐색 8건은 인샘플 프로핏 팩터를 최고 1.37까지 끌어올렸습니다. 맞추지 않은 구간에서도 버틴 설정은 하나도 없었습니다.
- 그 결과를 위해 감수한 위험. 전체에서 가장 큰 순이익 +304.23은 그리드 바스켓이 -7.92%의 낙폭을 거쳐서 번 것입니다.
- 백테스트인가, 실거래인가. 여기 모든 수치는 전략 테스터 실행 결과입니다. 실계좌는 하나도 없습니다.
각 항목은 아래에서 우리 자체 데이터로 검증합니다.
데이터가 보여주는 것: EA 설계 53개, 똑같은 MT5 검증 하나
Builder에는 스타터 템플릿이 87개 있고, 그중 53개에 측정된 백테스트가 붙어 있습니다. 53개 모두 같은 심볼, 시간 프레임, 기간, 모델, 예치금으로 한 번씩 돌렸습니다. 이 점은 생각보다 중요합니다. 공개된 EA 비교는 대부분 브로커와 기간과 계좌 규모가 제각각이어서, 그 차이는 주로 검증 조건의 차이입니다. 여기서 달라지는 것은 규칙 집합뿐입니다. 이런 검증을 어떻게 돌리고 표시하는지는 검증 방법에 정리해 두었습니다.
| 기본 설정에서의 프로핏 팩터 | 설계 수 |
|---|---|
| 0.80 미만 | 6 |
| 0.80 ~ 0.89 | 7 |
| 0.90 ~ 0.99 | 29 |
| 1.00 ~ 1.09 | 9 |
| 1.10 ~ 1.19 | 1 |
| 1.20 이상 | 1 |
| 검증 조건 | |
|---|---|
| 실험 ID | EXP-TEMPLATE-PROFITABILITY-001 |
| 상위 실험 | EXP-BUILDER-TEMPLATE-BASELINE-001 |
| MT5 빌드 | 템플릿 매니페스트에 기록되지 않음 |
| 환경 | MetaTrader 5 전략 테스터, Exness MT5, 2026-06-18 측정 |
| 심볼 / 시간 프레임 | USDJPYm M5 |
| 기간 | 2025-06-01 – 2026-06-09 |
| 모델 | M1 OHLC (Model=1) |
| 예치금 | 10,000 |
| 최종 검증 | 2026-09-27 |
분포의 모양이 첫 번째 발견입니다. 손실을 내는 EA는 대개 요란하지 않습니다. 53개 중 29개가 0.90에서 0.99 사이에 있고, 53개 전체의 낙폭 중앙값은 -1.33%에 불과합니다. 우위가 없는 규칙은 폭발하지 않습니다. 거래마다 조금씩 내주면서 서서히 내려갑니다. 그래서 손실을 내는 EA가 몇 달 동안 돌아간 뒤에야 누군가 그것이 지고 있다고 판단하게 됩니다.
표의 윗부분은 짧지만 자세히 읽어 볼 가치가 있습니다.
| 설계 | 블록 수 | 거래 수 | 프로핏 팩터 | 최대 낙폭 | 10,000 기준 순손익 |
|---|---|---|---|---|---|
pending_breakout | 9 | 164 | 1.23 | -0.21% | +38.47 |
ma_distance_pullback | 6 | 159 | 1.10 | -0.26% | +25.55 |
mtf_sar_bb_break | 21 | 20 | 1.08 | -0.10% | +3.27 |
basket_avg_tp_grid | 7 | 8,765 | 1.03 | -7.92% | +304.23 |
dualpair_rsi_basket | 13 | 12,953 | 0.87 | -36.38% | -3,433.95 |
가장 좋은 설계는 1년 동안 10,000으로 +38.47, 0.4% 미만을 벌었습니다. 세 번째 설계는 거래 20건 위에 서 있어서 결과라기보다 소문에 가깝습니다. 그리드 바스켓은 전체에서 가장 많이 벌었지만 그러려면 이익보다 큰 낙폭이 필요했습니다. 그리고 가장 나쁜 설계는 같은 검증에서 계좌의 3분의 1을 잃었습니다. ‘수익형’이라는 말은 위의 네 행을 모두 덮지만, 그 넷은 같은 종류의 결과가 아닙니다.

이 표가 무언가를 의미하기 전에 두 가지 한계가 먼저 붙습니다. 심볼 하나, 시간 프레임 하나, 1년이라는 점입니다. 기본 설정의 설계가 완성품이 아니라고 말하기에는 충분하지만, 전략 일반의 순위를 매기기에는 부족합니다. 그리고 M1 OHLC 모델은 각 봉 안의 경로를 보간하므로, 절대 수치에는 흔히 말하는 체결 가격의 단서가 붙습니다(이유는 모델링 품질에서 설명합니다).
비교: 수익이 나는 EA 설계와 나머지를 가르는 것
수익이 드물다면, 쓸모 있는 질문은 수익이 나는 설계들이 무엇을 공유하느냐입니다. 같은 53개 기록을 사람들이 흔히 성공 요인으로 꼽는 특징별로 나눠 보았습니다.
| 그룹 | 설계 수 | 프로핏 팩터 중앙값 | 1.00 이상 | 낙폭 중앙값 |
|---|---|---|---|---|
| 단일 전략, 블록 4–8개 | 14 | 0.945 | 4 | -1.025% |
| 단일 전략, 블록 9–12개 | 18 | 0.93 | 3 | -1.165% |
| 단일 전략, 블록 13개 이상 | 12 | 0.94 | 4 | -1.035% |
| 여러 규칙의 포트폴리오 | 9 | 0.91 | 0 | -3.51% |
| 낙폭이 5%를 넘는 설계 전체 | 8 | — | 1 | — |
복잡함은 도움이 되지 않았습니다. 크기별 세 그룹은 서로 0.015 이내에 모여 있고, 전체에서 가장 좋은 설계는 블록 9개를 씁니다. 규칙에 필터를 더하면 어떤 거래를 잡는지는 바뀝니다. 이 증거로 보면 그 규칙에 우위가 있는지는 바뀌지 않습니다.
규칙을 묶으면 더 나빠졌습니다. 포트폴리오 템플릿 9개는 모두 0.89에서 0.95 사이로 끝났고, 1.00 이상은 하나도 없었습니다. 낙폭 중앙값은 단일 규칙의 -1.065%에 비해 -3.51%였습니다. 같은 가격을 읽는 여러 규칙은 같은 판단을 내리고 함께 잃는 경향이 있습니다. 분산은 플러스 기대값을 퍼뜨릴 뿐, 없는 기대값을 만들어 내지 않습니다.
크기와 레버리지는 우위가 아니라 결과를 키웠습니다. 설계 8개가 5% 넘게 물에 잠겼습니다. 그중 하나인 그리드 바스켓은 1.03으로 1.00 위에서 끝났습니다. 나머지에는 전체에서 가장 나쁜 두 결과가 들어 있고, 둘 다 -36% 근처입니다. 그리드 트레이딩이나 레버리지를 건 랏 규칙은 약한 신호를 강한 신호로 바꾸지 않습니다. 거래당 작은 손실을 큰 손실로 바꾸거나, 뒤로 미룰 뿐입니다.
‘추천’은 배선에 대한 말입니다. 갤러리는 측정된 설계 53개 중 40개를 추천으로 표시하고, 그 40개 중 10개가 1.00 이상으로 끝났습니다. 이 표시는 그 흐름이 해당 패턴의 깔끔한 예라는 뜻입니다. 수익에 대한 주장이었던 적은 없습니다.
한 구간에서의 수익 대 세 구간에 걸친 수익
가장 중요한 비교는 설계 사이가 아니라 구간 사이에 있습니다. 템플릿 8개에는 이것을 직접 보여 주는 파라미터 탐색 기록이 붙어 있습니다. 각 탐색은 H1에서 손절과 익절을 최대 세 구간에 걸쳐 움직였습니다. 맞춘 기간, 그 뒤의 홀드아웃, 그리고 그보다 앞선 구간이며, 남긴 수치를 기록합니다. 칸이 비어 있으면 기록에 그 숫자가 없다는 뜻입니다.
| 설계 | 기본 PF | 인샘플 최고 | 홀드아웃 | 앞선 구간 | 판정 |
|---|---|---|---|---|---|
ichimoku | 1.03 | 1.37 | 0.89 | 0.80 | no_robust_edge |
ma_crossover (H1) | 0.95 | 1.23 | — | 0.98 | no_robust_edge |
cci_level | 0.95 | 1.07 | 1.05 | 0.92 | no_robust_edge |
adx_trend | 0.96 | 1.04 | 0.91 | 0.80 | no_robust_edge |
breakout | 1.05 | 1.04 | 0.79–0.89 | 0.64–0.84 | no_robust_edge |
rsi_reversal | 0.94 | 0.91 | — | — | no_robust_edge |
bb_bounce | 0.97 | 0.91 | — | — | no_robust_edge |
macd_signal | 0.93 | — | 1.14–1.15 | 0.74–0.77 | no_robust_edge |
가장 큰 인샘플 숫자가 가장 멀리 떨어졌습니다. ichimoku의 1.37은 0.89와 0.80이 되었습니다. macd_signal은 홀드아웃에서 1.14–1.15까지 갔지만 앞선 구간에서는 0.74–0.77이었습니다. 설계 두 개는 맞춘 데이터에서조차 1.0을 넘지 못했습니다. 이것이 평범하고 선의에서 나온 형태의 과최적화입니다. 한 구간에 가장 잘 맞는 설정은 그 구간의 잡음을 가장 많이 흡수한 설정입니다.
세 구간 기록이 깔끔한 설계는 하나이고, 위 표에서 가장 좋은 설계입니다. 그 1.23은 M5 검증에서 나왔습니다. pending_breakout은 그 뒤 USDJPY H1에서 고정 스프레드 20으로 2018–21년, 2022–24년, 2025–26년에 걸쳐 따로 재검증했습니다.
- 기본 설정(SL 40 / TP 80 pips), 즉 M5 검증에서 1.23을 기록한 설정은 H1 재검증의 2018–21년에 0.99였습니다.
- 인샘플 최고(SL 50 / TP 120)는 1.31까지 올랐다가 2018–21년에 0.98로 떨어졌습니다.
- 세 구간 모두에서 1.00 위를 지킨 설정은 두 개였습니다. SL 30 / TP 120은 1.12 / 1.16 / 1.14, SL 30 / TP 80은 1.09 / 1.15 / 1.10입니다. 수수한 쪽입니다. 기록은 이것을 USDJPY 한정으로 봅니다. EURJPY와 GBPJPY 교차 검증은 인샘플에서 손실이었습니다.
그러니까 설계 53개 검증에서 가장 수익이 나 보이던 EA는 한 검증에서 기준을 넘었고, 앞선 구간에서는 0.99에 머물렀습니다. 견고한 버전은 더 적게 법니다. 실망스러운 결과가 아닙니다. 진짜이지만 작은 우위를 정직하게 확인하면 이렇게 보입니다.

프로핏 팩터를 믿기 전에 확인할 것
의미 있는 숫자와 그저 보기 좋은 숫자를 가르는 확인은 네 가지입니다. 직접 만든 EA에도, 누군가 보여 준 EA에도 똑같이 적용됩니다.
1. 비율 뒤에 있는 거래 수. 거래 20건 위의 프로핏 팩터는 소수점이 붙은 잡음입니다. Builder의 Measure 패널은 60건 미만을 합격으로 부르지 않으며, 1년에 164건도 여전히 적습니다. 매번 비율보다 거래 수를 먼저 읽으십시오.
2. 설정이 본 적 없는 구간. 같은 규칙을 더 앞선 기간이나 맞춘 구간 뒤의 홀드아웃에서 보여 달라고 하십시오. 우리 탐색 8건에서는 검증한 모든 구간에서 1.00 위를 유지한 설정이 없었고, 두 개는 맞춘 구간에서조차 1.00을 넘지 못했습니다. 구간이 하나뿐이라면 보고 있는 것은 발견이 아니라 맞춤입니다. 워크포워드 분석은 이 확인을 체계적으로 하는 방법입니다.
3. 순이익을 위해 치른 낙폭. 최대 낙폭과 순이익을 나란히 놓으십시오. 그리드 바스켓의 +304.23에는 -7.92%의 낙폭이 따라왔으므로, 계좌는 한때 최종 이익보다 더 깊이 물에 잠겨 있었습니다. 합리적인 거래일 수도 있습니다. 다만 스스로 고른 거래여야 합니다.
4. 비용 대비 여유. 프로핏 팩터 1.03은 총이익이 총손실보다 3% 컸다는 뜻입니다. 손실 쪽에 3% 정도를 더하는 것이면 무엇이든 — 테스터보다 넓은 스프레드, 수수료, 중요한 진입에서의 슬리피지 — 그 여유를 지웁니다. 1.00 위의 여유가 얇을수록 결과는 당신의 브로커가 검증 조건과 얼마나 같은지에 더 크게 좌우됩니다.
실제로 운용하기
일상적인 운용은 대부분 개입이 아닙니다. 무엇이 있으면 멈출지를 미리 정하고, EA가 여전히 기록대로 움직이는지 확인하는 일입니다.
- 먼저 자신의 브로커에서 다시 돌리십시오. 전략 테스터(
Ctrl+R)를 열고 EA를 고른 뒤, 실제로 거래할 심볼과 시간 프레임으로 자신의 브로커 이력에서 검증하십시오. 한 브로커의 USDJPY M5 기록은 다른 브로커의 EURUSD H1에 대해 아무것도 말해 주지 않습니다. - 비교할 때는 모델을 맞추십시오. 위 기록은 M1 OHLC를 씁니다.
Every tick based on real ticks로 다시 돌리면 체결이 바뀌므로, ‘다른’ 결과는 다른 EA가 아니라 다른 검증일 수 있습니다. - 돈보다 데모가 먼저입니다. 손실 구간을 볼 수 있을 만큼 오래 데모 계좌에서 돌리십시오. 필요한 숫자는 수익률이 아닙니다. 측정한 낙폭의 바닥에서도 여전히 그것을 돌리고 있을지입니다.
- 맞는 탭을 보십시오. Toolbox의 Experts 탭에는 EA 자신의 로그가, Journal 탭에는 터미널의 실행 기록이 담깁니다. ‘거래를 하지 않는’ EA는 전략 문제보다 스위치 문제인 경우가 훨씬 많습니다. Algo Trading은 두 곳에서 켜져 있어야 합니다. 툴바 버튼과
Tools > Options > Expert Advisors > Allow Algo Trading입니다. - Builder EA에는 한 줄이 더 필요합니다. Builder에서 컴파일한
.ex5는 시작할 때https://aistrategyminer.com에 확인을 보냅니다. 그 주소를Tools > Options > Expert Advisors > Allow WebRequest for listed URL에 추가하지 않으면 EA는aistrategyminer.com authorization failed - EA disabled를 띄우고 멈춥니다. 전략 테스터에서는 이 확인을 건너뜁니다. - 0이 아니라 기록과 비교하십시오. 기록에 5% 낙폭이 들어 있는 EA가 1% 마이너스라면 정상적으로 움직이는 것입니다. 기록보다 세 배 자주 거래하거나 기록의 어떤 값보다 깊이 잠겨 있는 EA는, 규칙이 스스로는 알아차릴 수 없는 무언가를 알려 주고 있습니다.
위험과 낙폭의 현실
숫자와 함께 붙어야 할 한계가 세 가지 있습니다.
과거 결과는 앞으로 이어지지 않습니다. 프로핏 팩터는 이미 지나간 구간을 설명합니다. pending_breakout 기록이 여기서 가장 분명한 예입니다. 같은 규칙과 같은 설정이 M5 검증에서 1.23, H1 재검증의 앞선 구간에서 0.99였습니다.
선별이 당신이 보는 것을 만듭니다. 수익이 난 EA만 나열한 페이지는 필터를 통과한 것을 보여 주는 것이고, 그 필터는 당신이 볼 수 없는 부분입니다. 위의 설계 53개는 결과로 거르지 않았기 때문에 잃는 42개가 보이는 것입니다. 어떤 출처든 보여 주는 설계를 찾기 위해 몇 개를 검증했는지 물어보십시오.
작은 우위도 우위이고, 여전히 작습니다. 우리 데이터에서 가장 견고한 설정의 프로핏 팩터는 1.09에서 1.16이었습니다. 진짜 결과이지만 얇아서, 모델에 넣지 않은 비용에 쉽게 먹힙니다. 어떤 결과도 보장되지 않으며, 이 페이지의 모든 기록에는 손실이 들어 있습니다.
다음 단계
그다음으로는 다음을 참고하십시오.
- 사람과 규칙 집합이 손실 구간을 어떻게 지나는지 비교하려면 EA와 수동 매매 비교를 읽으십시오.
- 낙폭을 예치금과 랏 크기로 바꾸려면 EA 트레이더를 위한 리스크 관리를 읽으십시오.
- 아이디어에서 컴파일된
.ex5까지 전체 과정은 코딩 없이 EA 만들기를 보십시오. - 설정을 탐색하기 전에 위의 탐색 8건을 자세히 따라가는 파라미터 최적화를 읽으십시오.
- EA를 다른 곳에서 받았다면 무료 EA 사용법이 먼저 해야 할 확인을 다룹니다.