Pathfinder vlakt de koers drie keer af en handelt wanneer die lijn belangrijke niveaus kruist, zoals de high of low van de vorige maand, de high van de vorige week, of de high of low van de vorige dag. Filters op basis van moving averages (50 en 250 SMA) bepalen welke kruisingen meetellen. Trades stappen uit op een doel van 2% voor longs, 1.75% voor shorts, een stop van 5%, of na een vast aantal bars.
Beste run van 11. US Crude Oil, 2 min, spread 3, uit run pf:2026-09-15-CRUDE-2m.tsv:1.
| Periode | Tot 2026-09-15 |
| Instrument | US Crude Oil, 2 minuten |
| Spread | 3 punten |
| Contracten | 1 |
| Startkapitaal | 1,000,000 |
| Kosten | Alleen spread. Commissies en overnight financiering zijn niet meegerekend. |
| Bars | Tot 200,000 bars, minder waar het instrument minder historie heeft |
| Laatst getest | 2026-09-16 |
| positionSize Basisaantal contracten per trade | 1 |
| firstSmoothPeriod Lengte van het Wilder-gemiddelde voor de signaallijn | 5 |
| secondSmoothPeriod Tweede afvlakkingslengte voor de signaallijn | 10 |
| thirdSmoothPeriod Derde afvlakkingslengte voor de signaallijn | 3 |
| trendPeriod Lengte van het lange SMA-trendfilter | 250 |
| filterPeriod Kortere SMA-filterlengte | 50 |
| stopLossPct Beschermende stop als procent van de instapprijs | 5 |
| takeProfitLongPct Winstdoel voor longs, procent | 2 |
| takeProfitShortPct Winstdoel voor shorts, procent | 1.75 |
| maxBarsLongWinning Aantal bars voordat een winnende long wordt gesloten | 18 |
| maxBarsShortWinning Aantal bars voordat een winnende short wordt gesloten | 13 |
| maxBarsLongLosing Aantal bars voordat een verliezende long wordt gesloten | 30 |
| maxBarsShortLosing Aantal bars voordat een verliezende short wordt gesloten | 25 |
| shortSeasonStart Eerste maand van het short-seizoen (april) | 4 |
| shortSeasonEnd Laatste maand van het short-seizoen (september) | 9 |
| longSizeMultiplier Long size-factor buiten het short-seizoen | 2 |
| shortSizeMultiplier Short size-factor binnen het short-seizoen | 2 |
Elke run
| Markt | Tijdframe | PF | Trades | Winst % | Netto | Max DD |
|---|---|---|---|---|---|---|
| Amerikaanse ruwe olieBeste run | 2 min | 1.24 | 430 | 55.58 | 1,453 EUR | -991 |
| Zilver | 2 min | 1.21 | 338 | 64.50 | 7,847 USD | -11,318 |
| DAX 40 | 4 uur | 1.18 | 1,938 | 60.89 | 34,312 EUR | -13,097 |
| Goud | 4 uur | 1.16 | 1,852 | 58.10 | 3,921 EUR | -1,984 |
| Nikkei 225 | 4 uur | 1.14 | 1,521 | 57.99 | 49,301 USD | -26,547 |
| FTSE 100 | 4 uur | 1.12 | 1,879 | 57.53 | 11,758 EUR | -10,943 |
| Dow Jones | Dagelijks | 1.10 | 2,409 | 55.62 | 30,189 EUR | -23,042 |
| Amerikaanse ruwe olie | 4 uur | 1.10 | 1,351 | 64.69 | 12,333 EUR | -10,842 |
| Goud | 1 uur | 1.10 | 2,665 | 57.04 | 1,970 EUR | -1,568 |
| Brent-olie | 4 uur | 1.09 | 1,037 | 65.67 | 9,437 EUR | -6,084 |
| USD/JPY | 1 uur | 1.06 | 2,954 | 59.88 | 528,140 JPY | -528,370 |
Grafieken
Top 10 van 11 runs. De volledige lijst staat in de tabel hierboven.
Boven 1.0 werd geld verdiend, onder 1.0 werd geld verloren.
De code
// ============================================================ // Pathfinder // ProRealAlgos Strategy Library | prorealalgos.com // Type: Breakout // Direction: Long & short // Timeframe tested: 2 minutes // ============================================================ // --- Settings --- DEFPARAM CumulateOrders = true DEFPARAM PreloadBars = 10000 // --- Parameters --- positionSize = 1 // base contracts per trade firstSmoothPeriod = 5 // Wilder average of close secondSmoothPeriod = 10 // time series average of the first line thirdSmoothPeriod = 3 // time series average of the second line trendPeriod = 250 // long SMA trend filter filterPeriod = 50 // shorter SMA filter stopLossPct = 5 // protective stop, percent of entry price takeProfitLongPct = 2 // target for longs, percent takeProfitShortPct = 1.75 // target for shorts, percent maxBarsLongWinning = 18 // close a winning long after this many bars maxBarsShortWinning = 13 // close a winning short after this many bars maxBarsLongLosing = 30 // close a losing long after this many bars maxBarsShortLosing = 25 // close a losing short after this many bars shortSeasonStart = 4 // April, first month of the short season shortSeasonEnd = 9 // September, last month of the short season longSizeMultiplier = 2 // long size factor outside the short season shortSizeMultiplier = 2 // short size factor inside the short season // State, seeded so every value is defined on the first bar. ONCE lastWeekBarIndex = 0 ONCE lastMonthBarIndex = 0 ONCE weeklyHigh = 0 ONCE monthlyHigh = 0 ONCE monthlyLow = 0 ONCE takeProfitPct = takeProfitLongPct // --- Indicators --- prevDayHigh = DHigh(1) prevDayLow = DLow(1) // Previous week's high, taken when a new week starts. IF DayOfWeek < DayOfWeek[1] THEN weeklyHigh = Highest[max(1, BarIndex - lastWeekBarIndex)](prevDayHigh) lastWeekBarIndex = BarIndex ENDIF // Previous month's high and low, taken when a new month starts. IF Month <> Month[1] THEN monthlyHigh = Highest[max(1, BarIndex - lastMonthBarIndex)](prevDayHigh) monthlyLow = Lowest[max(1, BarIndex - lastMonthBarIndex)](prevDayLow) lastMonthBarIndex = BarIndex ENDIF // Triple-smoothed signal line: Wilder, then two time series averages. firstLine = WilderAverage[firstSmoothPeriod](close) secondLine = TimeSeriesAverage[secondSmoothPeriod](firstLine) signalLine = TimeSeriesAverage[thirdSmoothPeriod](secondLine) trendMA = Average[trendPeriod](close) filterMA = Average[filterPeriod](close) // CurrentMonth is the calendar month the system runs in, not the bar's month. shortSeason = CurrentMonth >= shortSeasonStart AND CurrentMonth <= shortSeasonEnd positionProfit = (((close - PositionPrice) * PointValue) * CountOfPosition) / PipSize barsInTrade = BarIndex - TradeIndex
Nog 40 regels: de instap- en uitstapregels.
Opzet
Met de volledige 1,000,000 beschikbare bars op US Crude Oil 2 minuten draaide de nettowinst van EUR 1,453.23 in de standaardrun om naar EUR -4,182.23, omdat de oudere data alleen EUR 5,635.46 verloor.
| Beschikbare bars | 1,000,000 |
| Netto, standaard run van 200,000 bars | 1,453.23 EUR |
| Netto, lange run | -4,182.23 EUR |
| Netto op alleen de oudere data | -5,635.46 EUR |
Vragen
Ja. Let op dat de seizoensgebonden sizing in live trading verandert met de kalendermaand, wat de backtest niet kon reproduceren.
De uitgelichte run was US Crude Oil 2 minuten met 1,453.23 EUR over 430 trades. Het was in de weergegeven runs ook winstgevend op DAX 40, Gold, Nikkei 225, FTSE 100, Dow Jones, Brent Crude, Silver en USD/JPY, met profit factors tussen 1.06 en 1.21.
Bij 1 contract met een spread van 3 punten had US Crude Oil 2 minuten een max drawdown van 991 EUR. Longs kunnen posities bijvoegen, dus de werkelijke exposure kan hoger zijn dan 1 contract.
Maand- en weekniveaus worden op langzame bars maar een paar keer per grafiek gekruist, en 4 uur bars leverden de meeste positieve runs. De 2 minuten run is de uitgelichte run omdat die de beste profit factor had, 1.24.
Gerelateerd
De ProRealAlgos community krijgt de volledige regels, de complete code en de geautomatiseerde portefeuille.