entry wenn vorheriges crossing over tiefer war
Forums › ProRealTime Deutsch forum › ProOrder Support › entry wenn vorheriges crossing over tiefer war
- This topic has 8 replies, 2 voices, and was last updated 3 years ago by robertogozzi.
-
-
03/10/2021 at 7:58 AM #163670
Hallo, ich bräuchte einen kleinen Code:
Der Entry (LONG) soll bei einem normalen Crossing over der MACD Signal Line erfolgen, aber nur wenn der vorherige Crossing over unter dem aktuellen crossing over liegt.
Siehe Bild
Ich weiß nicht wie ich vorheriges im Code schreiben soll?
Danke !!!!!
03/10/2021 at 8:50 AM #163672Hier ist es (ich habe es nicht ausprobiert):
12345678910111213141516171819Defparam CumulateOrders = falseOnce CrossOverLevel = 0Once PrevCrossOverLevel = 0Once CrossOver = 0MyMACD = Average[12,1](close) - Average[26,1](close)MySignalLine = Average[9,1](MyMACD)CrossOver = MyMACD crosses over MySignalLineIf CrossOver thenPrevCrossOverLevel = CrossOverLevelCrossOverLevel = MyMACDIf CrossOverLevel < PrevCrossOverLevel or PrevCrossOverLevel = 0 ThenCrossOver = 0EndifEndifIf MyLongConditions and CrossOver and Not OnMarket thenBuy 1 contract at MarketEndifSet Target pProfit 200Set Stop pLoss 10003/10/2021 at 9:40 AM #163680Daaanke OMG ist das kompliziert 🙂
Kannst du das bitte mit diesem Code kombinieren, das bekomm ich sicher nicht hin.
LG
mysystem mit MACD Regel123456789101112131415161718192021222324Capital = 5000 //initial CEquity = Capital + StrategyProfit //current EquityPerCent = 2 //1% riskRiskSize = (Equity * PerCent / 100) //max. Money at riskMinSize = 1 //0.5 lots// Bedingungen zum Einstieg in Long-Positionenindicator1 = ExponentialAverage[17](close)c1 = (close > indicator1)indicator2 = MACDline[12,26,9](close)c2 = (indicator2 < 0.1)indicator3 = MACDline[12,26,9](close)indicator4 = MACDSignal[12,26,9](close)c3 = (indicator3 CROSSES OVER indicator4)IF not longonmarket and c1 AND c2 AND c3 THENX = (AverageTrueRange[10](close))*3 //X = SL differencePositionSize = max(MinSize,RiskSize / X) //Compute PositionSize, no less than MinSizeBUY PositionSize SHARES AT MARKETENDIFSET STOP LOSS xSET TARGET PROFIT x * 303/10/2021 at 10:00 AM #163684Das sollte in Ordnung sein:
123456789101112131415161718192021222324252627282930Capital = 5000 //initial CEquity = Capital + StrategyProfit //current EquityPerCent = 2 //1% riskRiskSize = (Equity * PerCent / 100) //max. Money at riskMinSize = 1 //0.5 lots// Bedingungen zum Einstieg in Long-Positionenindicator1 = ExponentialAverage[17](close)c1 = (close > indicator1)indicator2 = MACDline[12,26,9](close)c2 = (indicator2 < 0.1)indicator3 = MACDline[12,26,9](close)indicator4 = MACDSignal[12,26,9](close)Once CrossOverLevel = 0Once PrevCrossOverLevel = 0Once CrossOver = 0CrossOver = indicator3 crosses over indicator4If CrossOver thenPrevCrossOverLevel = CrossOverLevelCrossOverLevel = indicator3If CrossOverLevel < PrevCrossOverLevel or PrevCrossOverLevel = 0 ThenCrossOver = 0EndifEndifIF not longonmarket and c1 AND c2 AND CrossOver THENX = (AverageTrueRange[10](close))*3 //X = SL differencePositionSize = max(MinSize,RiskSize / X) //Compute PositionSize, no less than MinSizeBUY PositionSize SHARES AT MARKETENDIFSET STOP LOSS xSET TARGET PROFIT x * 303/10/2021 at 1:51 PM #16371703/10/2021 at 3:46 PM #163735Hallo, ich kriege das leider nicht hin, können Sie bitte helfen?
Der Screener soll alle Werte finden, wo der MACD wie im Code oben überkreuzt, wenn die letzte Überkreutzung tiefer war und der Close über dem EMA 17 liegt.
Das wäre toll.
Kann es sein das im screener Coder Once nicht akzeptiert wird?
Danke Ihnen
03/10/2021 at 4:32 PM #163737Versuch es:
12345678910111213141516171819indicator1 = ExponentialAverage[17](close)c1 = (close > indicator1)indicator2 = MACDline[12,26,9](close)c2 = (indicator2 < 0.1)indicator3 = MACDline[12,26,9](close)indicator4 = MACDSignal[12,26,9](close)Once CrossOverLevel = 0Once PrevCrossOverLevel = 0Once CrossOver = 0CrossOver = indicator3 crosses over indicator4If CrossOver thenPrevCrossOverLevel = CrossOverLevelCrossOverLevel = indicator3If CrossOverLevel < PrevCrossOverLevel or PrevCrossOverLevel = 0 ThenCrossOver = 0EndifEndifCond = c1 AND c2 AND CrossOverSCREENER[Cond]03/10/2021 at 8:56 PM #16374803/11/2021 at 12:59 AM #163770Ich habe tatsächlich einige falsche Ergebnisse festgestellt:
12345678910111213141516171819indicator1 = ExponentialAverage[17](close)c1 = (close > indicator1)indicator2 = MACDline[12,26,9](close)c2 = (indicator2 < 0.1)indicator3 = MACDline[12,26,9](close)indicator4 = MACDSignal[12,26,9](close)Once CrossOverLevel = 0Once PrevCrossOverLevel = 0Once CrossOver = 0CrossOver = indicator3 crosses over indicator4If CrossOver thenPrevCrossOverLevel = CrossOverLevelCrossOverLevel = indicator3If CrossOverLevel < PrevCrossOverLevel or PrevCrossOverLevel = 0 ThenCrossOver = 0EndifEndifCond = c1 AND c2 AND CrossOverSCREENER[Cond]Im Gegenteil, der gleiche Code, der in einen Indikator umgewandelt wurde, funktioniert ordnungsgemäß:
12345678910111213141516171819indicator1 = ExponentialAverage[17](close)c1 = (close > indicator1)indicator2 = MACDline[12,26,9](close)c2 = (indicator2 < 0.1)indicator3 = MACDline[12,26,9](close)indicator4 = MACDSignal[12,26,9](close)Once CrossOverLevel = 0Once PrevCrossOverLevel = 0Once CrossOver = 0CrossOver = indicator3 crosses over indicator4If CrossOver thenPrevCrossOverLevel = CrossOverLevelCrossOverLevel = indicator3If CrossOverLevel < PrevCrossOverLevel or PrevCrossOverLevel = 0 ThenCrossOver = 0EndifEndifCond = c1 AND c2 AND CrossOverRETURN Cond AS "Cond"Ich schlage vor, Sie drücken die Tastenkombination Ctrl+M auf der Plattform und fordern Erklärungen vom Support von ProRealTime an.
-
AuthorPosts
Find exclusive trading pro-tools on