Så testar du din strategi med ChatGPT

Publicerad: 20. juni 2023

Chatroboten ChatGPT har imponerat världen det senaste året med sin förmåga att skriva och översätta texter, skriva dikter, delta i dialoger om olika ämnen och mycket mer. En av de mindre uppenbara fördelarna med roboten är att den också kan användas för att utveckla och testa en tradingstrategi. ChatGPT kan faktiskt också skriva kod, vilket ger traders som inte är bra på att koda en möjlighet att enkelt testa sina strategier på historiska data.

Det är överraskande enkelt att komma igång, och det tar mindre än en timme att bli bekant med de verktyg vi beskriver i den här artikeln. När du förstår hur verktygen fungerar tar det bara cirka 5-20 minuter att utveckla en helt ny enkel strategi från grunden och testa den på historiska data. Och alla verktyg som beskrivs nedan är gratis. I artikeln går vi igenom följande:

Med Markets kan du spekulera i kursfall med hävstång Klicka här

Så testar du din strategi i Tradingview

Ett av de enklaste sätten att testa din tradingstrategi är genom verktyget Tradingview.com, som innehåller diagram över marknader runt om i världen och ger möjlighet att se historisk utveckling för allt från aktier till ETF:er och kryptovalutor. Tradingview har utvecklat sitt eget programmeringsspråk Pine Script™, vilket gör det enkelt för användare att testa sina strategier genom ett enkelt kodningsspråk. Problemet är att om man aldrig har provat att koda eller inte har någon speciell talang för det, kan Pine Script vara svårt att komma igång med.

Det är här ChatGPT kommer in i bilden. Det visar sig att chattroboten faktiskt är duktig på att skriva Pine Script och gör det möjligt för icke-programmerare att testa strategier. Så även utan någon programmeringserfarenhet kan du nu använda ChatGPT för att utveckla koden och snabbt testa din strategi.

Här är en enkel guide om hur du gör:

Öppna Tradingview.com med det instrument du vill undersöka. I det här fallet har vi valt bitcoin, och vi kan hitta kryptovalutan genom att söka på BTCUSD. Vi väljer att se bitcoin-priset som anges av mäklaren Bitstamp. Längst ner på skärmen kan du se ett fönster som heter “Pine editor”. Se bilden nedan där det är markerat med en röd ring.

I det här fältet har du möjlighet att kopiera in Pine Script-kod, och det skulle normalt sett vara en svårighet för icke-programmerare. Men med ChatGPT har alla möjlighet att generera kod. Nedan kommer vi att beskriva hur enkelt det är att göra detta.

För att använda ChatGPT behöver du få tillgång till den, och du kan få gratis tillgång här. När du har skapat ett konto kan du starta en konversation och få den att generera kod åt dig. När du använder ChatGPT för att generera Pine Script-kod, får du några bra tips om hur du som icke-programmerare kan använda chattroboten för att få de bästa resultaten.

I vissa fall träffar ChatGPT rätt från början och du kan testa din strategi på fem minuter. I andra fall kan det ta 20-25 minuter och 15-20 iterationer innan det lyckas. Ibland kan strategin vara för komplicerad för att du ska lyckas.

När du vill fråga ChatGPT om något kallas det att “prompta”. Här är några bra råd om hur du gör det på bästa sätt:

    1. Var så exakt som möjligt från början. Du kan få bra resultat med ChatGPT även om du börjar lite oexakt, men om du vill försöka träffa rätt från början, försök att definiera din strategi med millimeterprecision. Ett exempel på ett enkelt meddelande som vi använde för att utveckla en enkel strategi var: “Please create a strategy for tradingview in pinescript that trades like this: Buy every close when the SP500 is BELOW the 8 period simple moving average (8SMA) and sell the next bar (repeating until above 8SMA).” Detta meddelande ledde, efter några få iterationer, till att vi på under 10 minuter hade en strategi som kunde testas i Tradingview.
    2. Skriv på engelska om möjligt. När ChatGPT ska koda kan det hända att den blandar språken, så för att minimera fel rekommenderar vi att skriva på engelska till chattroboten. Det minskar språkförvirringen och undviker problem med svenska bokstäver som å, ä och ö, som inte kommer att accepteras i Pine Script.
  1. Be ChatGPT att korrigera felen. När du sparar koden i Tradingview kan du ibland få ett felmeddelande. Det innebär att koden inte fungerar och att det krävs några ändringar. Till exempel kan Tradingview ge dig felmeddelandet “Error at 9:4 Could not find function or function reference ‘ta.security'”. Detta är naturligtvis svårtolkat för dig som icke-programmerare, men nu kan du bara kopiera meddelandet till ChatGPT och be den att ändra koden. På 15-20 sekunder genererar den en ny kodbit som du kan testa igen.
  2. Börja om från början om du når över 20 iterationer. Ibland kan ChatGPT ha svårt att lösa problemen i koden, och även om du kopierar felmeddelandena fortsätter det att dyka upp nya fel. Då kan det ofta vara bäst att börja om helt genom att stänga webbläsarfönstret, öppna det igen, logga in och starta en helt ny chatt. En annan möjlighet är att skriva: “This code doesn’t work. Please suggest an alternative solution.” Det ger roboten möjlighet att komma ur den återvändsgränd som den kanske fastnat i.
Daytrading.se rekommenderar Markets för handel med olja, valuta och aktier Klicka här

Den första strategin för bitcoin

Vi är nu redo att testa den första strategin, som bygger på momentum och beskrivs i den här bloggposten. Med denna strategi köper man när dagens stängningspris är högre än gårdagens stängningspris och säljer kort när dagens stängningspris är lägre än gårdagens stängningspris.

Strategin fungerar bra i marknader där det kan finnas starkt momentum och en tendens att marknaden ingår i en “feedback-loop” som kan leda till att om marknaden stänger negativt idag kommer det skapa en negativ stämning som kan leda till ytterligare nedgångar dagen efter.

Strategin har testats från 1960 till 1999 och har varit mycket lovande, men i samband med IT-bubblan 2000 och finanskrisen 2008 gick det sämre för strategin, som visas nedan.

Författaren skriver i blogginlägget att strategin kanske kan användas på dagens kryptomarknader. Så vi försöker testa den på bitcoin under det senaste året.

Vi skriver följande till ChatGPT: “Create a trading view strategy to test, using the following strategy: Buy at the close price if it is higher than the closing price of the previous day and short when the reverse occurs”. ChatGPT tar bara cirka 15 sekunder på sig att generera koden, men första versionen av koden fungerar inte helt korrekt. Vi kopierar därför in felmeddelandet och felet rättas till. Efter fyra iterationer och ungefär 10 minuters arbete har vi en fungerande kod, där det också är möjligt att definiera vilket tidsintervall testet ska köras på.

Här nedanför är Pine Script-koden som genererades av ChatGPT.

Om du inte förstår koden spelar det ingen roll, för allt du behöver göra är att kopiera den till Tradingviews Pine Script-editor och spara koden. Du kan ladda ner koden här om du vill prova själv.

Gå nu till Tradingview och sök efter “BTCUSD” för att komma till en bitcoin-graf. Kopiera koden i botten av sidan där det står “Pine Editor” och klicka på “Save”. Nu sparas koden och om det finns fel kommer det att visas ett felmeddelande längst ned i webbläsarfönstret. Det meddelandet kan kopieras in i ChatGPT som snabbt kommer att ge en ny version.

När koden fungerar och godkänns utan fel kan du börja testa den. Klicka på “Add to chart” och då läggs strategins affärer till i grafen ovan. Därefter byter du från “Pine Editor” till “Strategy Tester” längst ned i fönstret, och då ser bilden ut som följer:

Under cirka 10 minuter har vi testat strategin om den hade implementerats på bitcoin under det senaste året. Överst ser vi diagrammet för bitcoin med markeringar för var man skulle ha köpt och sålt, och längst ned ser vi en översikt över strategins resultat. Du kan nu gå djupare in i siffrorna genom att titta på “Performance Summary” och “List of trades”, som ger en mer detaljerad bild av statistiken och alla affärer som skulle ha gjorts i sammanhanget.

Med Markets kan du spekulera i kursfall med hävstång Klicka här

Det visar sig att strategin har presterat bra och nu kan vi testa om det även skulle ha varit fallet under en längre period genom att ändra lite i koden. Vi ändrar på två ställen i koden inuti Pine Editorn, från 2022 till 2017, och testar strategin över de senaste sex åren. Detta utökade test visar att även om strategin klarar sig bra under långa perioder, så finns det en period under 2021 där den presterar särskilt dåligt och resulterar i förluster under en längre tid.

Slutsatsen i denna omgång är att det krävs ytterligare arbete med strategin för att få den att fungera bra.

Den andra strategin för SP500

Nu försöker vi testa en annan strategi, denna gång på det amerikanska SP500-indexet. Strategin är utvecklad av den amerikanska datatrader David Bergman och beskrivs här under Trading Truth #2.

Strategin går ut på att köpa SP500-indexet när priset går under ett enkelt glidande medelvärde på 8 (SMA8) och hålla positionen tills marknaden går över sitt 8-dagars glidande medelvärde.

Som man kan se i Bergmans test har denna strategi historiskt sett varit lönsam och har haft en imponerande avkastningskurva.

Vi bestämmer oss för att testa strategin från 2018 och framåt och skriver därför till ChatGPT: “Please create a strategy for tradingview in Pinescript that trades like this: “Buy every close when the SP500 is BELOW the 8 period simple moving average (8SMA) and sell the next bar (repeating until above 8SMA).”

Efter några iterationer, där vi också specificerar en tidsperiod för handel, kommer vi fram till följande resultat som visar att strategin har presterat bra under de senaste 5 åren, och det kan vara något att fortsätta arbeta med här. Du kan ladda ner strategikoden här.

Du kan se på avkastningsgrafen att strategin har gett förluster under vissa perioder, så det kan vara relevant att försöka hitta möjligheter till förbättring. Vi rekommenderar därför att du inte handlar strategin okritiskt, utan att du själv fortsätter att arbeta med den.

Med hjälp av ChatGPT kan du enkelt utveckla enkla strategier som kan testas i Tradingview, vilket ger en vanlig trader och investeraren möjlighet att snabbt testa strategier. Allt detta kan göras med gratisverktygen från ChatGPT och Tradingview. Om du vill ta det ett steg längre och få Tradingview att skicka ut larm baserat på den utvecklade strategin kan det vara en bra idé att skaffa en Pro eller Pro+-prenumeration. Med dessa prenumerationer kan systemet skicka ett e-postmeddelande eller SMS så snart det finns en handelsmöjlighet baserad på strategin.

Om du använder ChatGPT mycket kan det också vara fördelaktigt att uppgradera till ChatGPT Plus, vilket ger stabil och konstant tillgång till chatroboten samt möjlighet att använda extra funktioner som kan vara användbara.

Så här kan ChatGPT utveckla en daytrading-strategi från grunden

ChatGPT kan också utveckla en strategi helt från grunden. Det viktigaste att nämna i sammanhanget är att ChatGPT inte har någon unik kunskap om vad som fungerar bra eller dåligt på marknaderna och har inte möjlighet att själv testa strategierna. Den föreslår något, och sedan får man själv testa om det fungerar eller inte. Därför bör du använda chatroboten högst som inspiration för att utveckla egna strategier.

Vi bad ChatGPT om följande: “Please describe a mean reversion strategy for daytrading the German DAX index with succes, using Bollinger Bands”.

Efter några iterationer kom ChatGPT fram till följande strategi, som beskrivs nedan. Vi har tillåtit oss att redigera texten något rent grammatiskt och språkligt:

“Här är de exakta ingångssignalerna för mean reversion-strategin med hjälp av Bollinger Bands när du daytradar tyska DAX-index:

Ingångssignaler:

Short (Sälj) Ingångssignal: Nuvarande pris korsar under det övre Bollinger Band (UBB). Föregående stängning var över UBB. Nuvarande stängning är under UBB.

Lång (Köp) Ingångssignal:

Nuvarande pris korsar över det nedre Bollinger Band (LBB). Föregående stängning var under LBB. Nuvarande stängning är över LBB. Dessa ingångssignaler fokuserar uteslutande på om priset korsar över eller under Bollinger Bands som primära kriterier för att inta korta eller långa positioner.

Kom ihåg att justera och optimera dessa parametrar baserat på din backtesting och riskhanteringspreferenser. Det är viktigt att noggrant testa och validera varje handelsstrategi innan du använder riktiga pengar.”

Som chatroboten själv nämner bör denna strategi snarare användas som inspiration än som en fastställd tradingstrategi att direkt börja handla med.

Spread the love