Hej, känner ni till någon form av problem med historiken eller övrigt i db som gör att det blir konstiga resultat om man nyttjar "open" som input till gap strategi för dax eller omxs30?
Allmänt meddelande
Collapse
No announcement yet.
Problem open?
Collapse
X
-
Har sett att DAX har en del problem med c i EOD datan, testa att ändra kallendern till Stockholm i DAX när du simulerar så brukar det fungera bättre.AlgoPal - Emotionless Trading - Hyr ut våra trading algoritmer for Autostock via algopal.com
-
Edit: För den som är osäker diskuterar vi dagsupplösning.
Jag har inte analyserat open för DAX och vet inte om det kan bli fel och i så fall hur ofta. För OMX är det ett omfattande problem och jag rekommenderar att inte använda open i simuleringar. Någon får gärna motbevisa. Det som händer är att open kan bli gårdagens sista insamling intradag. En enkel test är att spara open och gårdagens sista intradag i celler. Sannolikheten att de är samma på öret är nästan obefintlig. För 5 sekunders animiering blir ca 33% av dagarna fel f.o.m. 2012. För minut animering färre. Simulerar man med minutanimering i stället för sekunder kan man få andra problem beroende på typ av modell. Jag har skrivit om detta flera gånger och detta blir nog den sista. Varje sig jag har fel eller ej.
Edit: Antalet dagar som har felaktig open borde variera för varje databas beroende på om man laddar från servern eller ej.
Open är väl inte någon officiell kurs, utan fastställs av programmet?
Förutsatt att man inte simulering EOD fastän att open ändå kan bli fel(om ni hänger med):
Alla data för innevarande dag måste komma från databasen med tick data från intradagsdatabasen och inte EOD. Därav möjligt fel av open i simulering. På samma sätt som att h och l för innevarande dag måste hämtas från intrdagsdatabasen då h och l gäller upp till tid X i simulering. Annars skulle det finnas en tidsmaskin.Last edited by Henric; 2021-02-27, 13:11.
Comment
-
Ursprungligen postat av Lord S Visa inläggHar sett att DAX har en del problem med c i EOD datan, testa att ändra kallendern till Stockholm i DAX när du simulerar så brukar det fungera bättre.
Comment
-
Jag har analyserat OMXS30 och kan inte svara på DAX.
Jag håller med petpee. Det går inte att på ett korrekt sätt använda open för gap för att simulera strategier. Jag tycker det är så pass viktigt för de som lägger ner tid och satsar riktiga pengar och att det inte bara blir latjolajbanlådan.
Detta borde åtgärdas eller åtminstone framgå. Annars kan någon lägga ner mycket tid och sedan diffar det rejält mellan simmulering och skarpt.
Problematiken beror på två faktorer:
1. Gårdagens sista intraddagskurs spiller över till nästa dag (det är inte ofta gårdagens sista intra är samma som gårdens close EOD). Det är alltså gårdagens sista intradag simulatorn använder nästa dag tills ny feed registrerats.
2. Öppningskursen beror på animering
Att kolla om senaste betalt inte är samma som gårdagens close har ingen effekt i sig. Man kan tro att så är fallet genom att köra minutanimering i simulatorn. Detta då chansen att alternativ 1 ovan inträffar minskar rejält. Jag har testat med 5 sekunders animering och liten effekt. Problemet är att under första minuten kan kursen ha dragit rejälj och blir helt avgörande i volatila marknader. Man kan väl använda open för minutanimering i simulering bara man är konsekvent. Svar nej, Problemet är att i skarpt läge används 5 sek animering och det blir omöjligt att stämma av verkliga affärer mot simulerade.
Använder man 5 sekunds animering i simulatorn blir öppningskursen i över 50% av dagarna gårdagens sista intradag(inte close dagskurser). Givetvis går det inte att använda för gap. Dessutom vill man inte köra en strategi i minutanimering om den är designad ör 5 sekunders. Att öppningskursen blir olika går inte att lösa genom att köra 5 sekunder och flytta fram trigger. Öppningskursen blir den samma.
Förslag är att införa en ny funktion som loggar öppningskursen på ett konsekvent sätt så att den blir rättvis och samma oberoende av animering.
Nu lite mer positivt. Då går ganska enkelt att skapa en egen open i en cell eller beräkning. Sedan får man testa sig fram om simulering och skarpt får liknande resultat.Last edited by Henric; 2021-02-27, 11:10.
Comment
-
Jag kan inte hitta någon skillnad om man använder extra objekt eller inte. Varför skulle det bli någon skillnad när innevarande dag i simulatorn förmodligen inte använder EOD-data? Tilläggs ska också att eqv(int(d),int(date())) inte löser vissa problem i simulatorn, men förmodligen live.
Om öppningskursen är första tick bör:
1. Simulatorn hämtar första tick oavsett animering. Dvs öppningskursen i simulatorn alltid är den samma oavsett animering.
2. Se till att det kommit in minst ett tick som inte är det samma som gårdagens intra innan öppningskursen sparas/hämtas (vet ej vad som händer under huven).
Vad den bästa öppningskursen är nog svårt att avgöra. Första ticket, medel x-antal först tick, typiskt pris första minuten. En annan diskussion som kan bli lång.. Det viktigaste nu är att öppningskursen blir konsekvent och simulering och skarpt stämmer ganska bra.
Det ska tilläggas att det borde in en spärr så att scripten i simulatorn inte körs alls innan ny feed för dagen kommit in. Skulle lösa några andra problem som kan uppstå då intradagskursen spiller över. Annan diskussion.
Comment
-
Detta är bara en frågn.
Är du säker på att den används för innevarande dag i simulering även för extraobjekt. EOD har väl bara ett värde för h, l, o, c. Dessa bara upp t.o.m. just nu. Annars måste scripten varje tick gå in i intradagsdatabasen och sedan se om tex h är högre än förra värdet. Eller detta kanske görs när data hämtas för varje tidpunkt för extra objektet, men blir ju samma sak.
Jag fick ingen skillnad, men ska dubbelkolla nästa vecka.
Edit 1: Dubbelkollade med 5 sek animering och open som parameter och extraobjekt ger samma värden. Dessutom ofta som gårdagens intra. Kör man minutanimering kanske open blir en annan, men då tillbaka till ruta ett enligt diskussion ovan.
Edit 2: Det kan ju vara så att det blir rätt i diagrammet, men inte i simulering. Om så är fallet kan man inte bara titta i diagrammet och förutsätta att det blir rätt i simulering. Återstår att testa.Last edited by Henric; 2021-03-01, 12:05.
Comment
Comment