En affär kräver att SuperTrend(3, 5) vänder efter en begränsad rörelse, Parabolic SAR på rätt sida av priset, och en rörelse i MACD-histogrammet över en bestämd storlek. Ett utjämnat mått på köp- och säljtryck måste stämma. Den här strategin har ännu inte backtestats.
| positionSize Storlek per punkt | 1 |
| stMultiplier SuperTrend ATR-multiplikator | 3 |
| stPeriod SuperTrend ATR-längd | 5 |
| sarStart Parabolic SAR startfaktor | 0.02 |
| sarStep Parabolic SAR steg | 0.02 |
| sarMax Parabolic SAR maxfaktor | 0.03 |
| macdFast MACD snabb längd | 12 |
| macdSlow MACD långsam längd | 26 |
| macdLineArg Tredje MACDline-argumentet, som publicerat | 150 |
| macdSignalPeriod EMA av MACD-linjen som används som signal | 9 |
| lookbackPeriod Fönster för tryckberäkningen | 100 |
| pressurePeriod EMA-längd som jämnar ut köp- och säljtryck | 500 |
| minTrendBars SuperTrend måste ha hållit sin sida längre än detta | 15 |
| longMacdSlope Minsta uppgång i MACD-histogrammet för longs (punkter) | 0.045 |
| shortMacdSlope Minsta fall i MACD-histogrammet för shorts (punkter) | 0.186 |
| minRangePips Föregående bars intervall måste överstiga detta (pips) | 2 |
| takeProfitPoints Vinstmål (punkter) | 10 |
| stopLossPoints Skyddande stop (punkter) | 10 |
Koden
// ============================================================ // SuperTrend SAR MACD // ProRealAlgos Strategy Library | prorealalgos.com // Type: Trend // Direction: Long & short // Timeframe tested: Not yet tested // ============================================================ // --- Settings --- DEFPARAM CumulateOrders = false // --- Parameters --- positionSize = 1 // size per point stMultiplier = 3 // SuperTrend ATR multiplier stPeriod = 5 // SuperTrend ATR length sarStart = 0.02 // Parabolic SAR start factor sarStep = 0.02 // Parabolic SAR step sarMax = 0.03 // Parabolic SAR maximum factor macdFast = 12 // MACD fast length macdSlow = 26 // MACD slow length macdLineArg = 150 // third MACDline argument, as published macdSignalPeriod = 9 // EMA of the MACD line used as signal lookbackPeriod = 100 // window for the pressure calculation pressurePeriod = 500 // EMA length that smooths buy and sell pressure minTrendBars = 15 // SuperTrend must have held its side longer than this longMacdSlope = 0.045 // minimum rise of the MACD histogram for longs (points) shortMacdSlope = 0.186 // minimum fall of the MACD histogram for shorts (points) minRangePips = 2 // previous bar range must exceed this (pips) takeProfitPoints = 10 // profit target (points) stopLossPoints = 10 // protective stop (points) ONCE stNotRisingBars = 0 // bars in a row the SuperTrend has not risen ONCE stNotFallingBars = 0 // bars in a row the SuperTrend has not fallen // --- Indicators --- stValue = SuperTrend[stMultiplier, stPeriod] sarValue = SAR[sarStart, sarStep, sarMax] macdMain = MACDline[macdFast, macdSlow, macdLineArg](close) macdTrigger = ExponentialAverage[macdSignalPeriod](MACDline[macdFast, macdSlow, macdLineArg](close)) macdHistogram = macdMain - macdTrigger barRange = Range // Buying versus selling pressure over the lookback window, smoothed. channelLow = Lowest[lookbackPeriod](low) channelHigh = Highest[lookbackPeriod](high) buyPressure = 100 * (3 * close - 2 * channelLow - open[lookbackPeriod - 1]) / CustomClose sellPressure = 100 * (open[lookbackPeriod - 1] + 2 * channelHigh - 3 * close) / CustomClose pressureSpread = ExponentialAverage[pressurePeriod](buyPressure) - ExponentialAverage[pressurePeriod](sellPressure) IF stValue[2] >= stValue[1] THEN stNotRisingBars = stNotRisingBars + 1 ELSE stNotRisingBars = 0 ENDIF IF stValue[1] >= stValue[2] THEN stNotFallingBars = stNotFallingBars + 1 ELSE stNotFallingBars = 0 ENDIF
17 rader till: entry- och exitreglerna.
Uppsättning
Frågor
Koden är skriven för ProOrder, men den har ännu inte kompileringskontrollerats eller backtestats. Betrakta den som en utgångspunkt för dina egna tester.
Inga än. Resultat läggs till när den har gått igenom testbatteriet.
Den handlar en storlek på 1 per punkt. Utan backtest finns det ännu ingen drawdown-siffra, så börja smått i demo.
Relaterat
ProRealAlgos-communityn får de fullständiga reglerna, den kompletta koden och den automatiserade portföljen.