Hej!
Håller på att förlora förståendet...
Hur kodar man "Sälj på stängning på femte dagen om StoS >20"?
Perioder sedan köp.
Om detta gäller ex MagicK-strategin,
så är det t ex antingen "efter 5 perioder" eller "StoS över 20" som ska ske.
Det blir i Redigera-signal-fönstret, så anges då under sälj:
"StoS" "över" "20"
och sen under "EXIT" till höger, kryssa i "Senast efter" 5 tidsenheter.
Nej korrekt egentligen att kolla på antal dagar sen köp,
det kan göras med ett sådan här script, som motsvarar MagicK2:
(och lägg först till Global variabel med namn "DaysFromBuy" = -1 i flik Inställningar)
plot1[0] = 0;
if (DaysFromBuy >= 0)
DaysFromBuy++;
else if (StoS(2, 3)[0] < 20)
{ // Buy-signal
plot1[0] = 1;
DaysFromBuy = 0;
}
// Exit-signal
if (DaysFromBuy >= 0)
{
if ((StoS(2, 3)[0] > 50) || (DaysFromBuy >= 5 && (StoS(2, 3)[0] > 20)))
{
plot1[0] = -1;
DaysFromBuy = -1;
}
}
- Redigerad
Detta va otroligt hjälpfullt. Funkar även bra för att mäta mot säljdagens stängningskurs Close[0] > Close[-DaysFromBuy]
Har kliat mig i huvudet ett tag för att lösa det
Men vad händer om man har fler köpkriterier som inte ligger i skriptet. Blir då DaysFromBuy=0 iallafall och den börjar räkna även att köpen inte gått igenom?
Min fråga är egentligen, måste jag ha alla köpvilkor i skriptet? Det blir ju lite jobbigare att testa massvis olika då.
Ja tyvärr är det så. I det ovan behöver i så fall alla köpvillkor ligga där, om man ska räkna antal dagar från köp. Kan komma en funktion framöver som ev. gör enklare lägga till fler villkor
Anders-HkSupport
Hur gör man för att kunna köra en strategitest på den här skripten?
mhw59 Strategi/signal kan läggas in på scriptet. Då anger man <scriptets namn>plot1 "är sant(=1)" vid KÖP.,
och enligt ovan <scriptets namn>plot1 "Mindre än" "0" vid SÄLJ.,