1. Tar bot 1:an? Värdet är väl redan omvandlat till procent. Det kommer nog ändå inte att påverka.
2. Då kan startpunkten för simuleringen bli avgörande. Så länge de flesta instrumenten ungefär har samma längt på historiken upp till 4 år borde det inte påverka så mycket.
Allmänt meddelande
Collapse
No announcement yet.
ROC and Roll
Collapse
X
-
1. För att ta bort 1:an i procentdelen, spelar nog iofs ingen roll i och med rankingen jämför med andra likadana värden.
2b Det görs en test längre ner att data finns minst 250 dagar, vilket ändå ger något värde på VAP. Men i princip kan man ändra till att testa data för 1000 dagar.
2c Minst 1000 dagar (EOD räcker)
Leave a comment:
-
1. rc_y=sub(roc(c,252,%),1)
2. bbl2k=sub(ma50,mult(2.5,stdev(vol_la,1000)))
1. Varför sub(x,1)
2a. Vollatiliteten 4 år tillbaka. Vad händer om det saknas data. Antingen 4 år innan simuleringen startar eller att instrumentet är listad efter simuleringsstart.
2b. Behöver alla instrument samma längd på historiken för att jämföras(se 2a)
Leave a comment:
-
Gamla versionen ligger fortfarande i Portfolio Mixer, men vi uppdaterar den inom några dagar för alla strategier.
Leave a comment:
-
Hur stor är skillnaden i det analyserade resultatet med den uppdaterade versionen jämfört med den gamla versionen?
CAGR på 38% är ortoligt bra. Mid cap under samma period har haft en CAGR på ca 20% och bättre än någon svensk småbolags fond under samma tidsperiod.
Leave a comment:
-
Det stämmer, när vollan viktades in kunde de övriga tidsperspektiven uteslutas, men inget hindrar ju att man kopplar in dem och simulerar med sitt favoriturval av aktier. Ersätt i så fall "rc_y" med "tot" på raden som börjar med "poäng_tt", så blir ROC-komponenten precis som tidigare.
VAP_delen fungerar precis som VAP-kurvan bakom snabbknappen i Pro. Samma formel används.
Leave a comment:
-
Hej,
I uppdateringen av ROC Investor beskrivs ett volla filter (i nyhetsbrevet).
Kan ni förklara lite hur ändringen är tänkt att fungera?
Vad jag kan se används inte längre vissa inparametrar och justerar man ROC tidsintervall ser det ut att bara vara rc_y som faktiskt används.
Om man vill ändra tidsperiod som rankingen utgår ifrån, vilka hårdkodade parametrar värden ska man ändra, och vilka förhållanden bör man ha relativt vad man önskar för period för år, kvartal och månad?
{ ROC and Roll Investor buy ver 1.2 200909 }
weight_q:=2 {2}
weight_y:=1 {1}
weight_m:=-1 {-1}
hysteres1:=1.02
hysteres2:=0.98
min_avg_daily_oms:=200000
hävstång:=1
{ VAP }
vol_la=sub(1,div(aref(c,1),c))
ma50=mov(vol_la,50,s)
bbl2k=sub(ma50,mult(2.5,stdev(vol_la,1000)))
bbl50=sub(ma50,mult(2,stdev(vol_la,50)))
rå=sub(bbl50,bbl2k)
rating1=mult(1,sum(gt(rå,aref(rå,1)),50))
rating2=mult(50,sub(1,div(abs(rå),bbl2k)))
vap=div(mx(0,mn(100,mult(sub(add(rating1,rating2),70),2))),100)
rc_y=sub(roc(c,252,%),1)
rc_q=sub(roc(c,63,%),1)
rc_m=sub(roc(c,21,%),1)
volla=hhv(div(bolbands(20,2,u),bolbands(20,2,l)),250)
ma_50=ema(c,50)
fall=lt(ma_50,aref(ma_50,1))
uppdagar=hhvbars(fall,250)
datesame=eqv(int(d),int(ref(d,1)))
dagar_data=sum(not(datesame),250)
no_split=llv(lt(div(abs(sub(c,ref(c,1))),c),0.3),250)
samma_dag=ge(int(d),sub(int(date()),2))
avg_oms_daily=div(sum(mult(c,v),250),250)
data_ok=and(and(and(gt(avg_oms_daily,min_avg_daily_oms),samma_dag),no_split),gt(dagar_data,240))
tot=add(add(mult(weight_q,rc_q),mult(weight_m,rc_m)),mult(weight_y,rc_y))
poäng_tt=mult(vap,mult(div(add(uppdagar,rc_y),volla),data_ok))
Jag använder sedan tidigare andra parametrar och ROC-perioder och vet inte om skriptet blivit bättre eller sämre ur anpassningsperspektiv.
Last edited by jimmy; 2020-09-12, 00:39.
Leave a comment:
-
Rankning kan göras på många sätt och du behöver inte använda samma script som ROC. Om det är trend kan tex entry göras med någon ranking och att exit tas med villkor anpassade för trend utan ranking eller stopp.
Leave a comment:
-
Jag labbade nu med att lägga in rank gvar och crid som extra script i analysbänken. Nu ser jag skillnaden för varje affär vad som händer med och utan nollställning och rank över tidUrsprungligen postat av Rikard Autostock Visa inläggDet går ganska enkelt att fixa, tex köra daglig dummy-affär på ABB och disabla ABB från rankingen.

Detta bör underlätta för att finjustera saker. måste också ge kred för debuggern. Har inte sett den tidigare men är ju otroligt bra när man ska analysera, förstå och felsöka.
Leave a comment:
-
Tack för bra förklaring av konsekvensen. Jag ska labba mera och se. Kanske i mitt fall att jag ska nollställa manuellt eller i vissa situationer.Ursprungligen postat av Rikard Autostock Visa inläggOm man inte nollställer rankingmotorn innan ny ranking blir det omöjligt att reproducera live, allt beror då på när man startar osv. Det är inte så rankingmotorn är designad.

Det jag inte vill är att positioner som går bra säljs av för att strax därefter köpas tillbaka osv. Kan vara så att jag även ska labba med ROC perioderna och viktningen.
Leave a comment:
-
Om man inte nollställer rankingmotorn innan ny ranking blir det omöjligt att reproducera live, allt beror då på när man startar osv. Det är inte så rankingmotorn är designad.
Leave a comment:
-
Tack Henrik
behövde någon att bolla med och höra lite åsikter/erfarenheter.
Jag labbar vidare.
Kan nämna att jag kombinerar två strategier som jag arbetar med att integrera bättre och tagit fram flera justeringar och modeller för skalning.
1. Trendande momentum - en ROC variant - vars avsikt är att ta trades i de starkaste aktierna där det inte uppstår tydliga köptillfällen och där det oftast lönar sig mycket att bara glida med. Därför vill jag ha så få signaler/brus som möjligt.
2. swing strategi som får handla i aktieurvalet som inte är upptagna i Trendande momentum, dvs inte sälja innehav för trendande momentum och där det oftare uppstår tydliga köpsignaler.
Kombinerar ovan handel baserat på ett aktieurval som tas utifrån fundamental bolagsdata och momentumananalys. Det blir därför till stor del diskretionär förvaltning, då jag justerar löpande aktieurval.
Last edited by jimmy; 2020-05-24, 18:12.
Leave a comment:
-
Nu har jag inte studerat skriptet så noga, men om jag vill testa att ta med en del av tidigare rankningsvärden, vad är bästa metoden?Ursprungligen postat av Rikard Autostock Visa inläggNollställningen behövs för att inte gamla värden ska ligga kvar i cellerna när ny rankingsekvens körs. Annars kommer tidigare "topplista" att påverka utfallet på den nya. Det blir nog slumpmässigt hur den kommer se ut gissar jag.
Ett sätt att få bättre koll på värdeutvecklingen över tid är att lägga ett script i egen kolumn vid simulering som mäter kontovärdet, så blir det enkelt att lägga över tex i Excel:
kontovärde=add(cash(a),cash(t))

Leave a comment:
-
Jag har en egen modell som använder ranking och vet hur känsligt det kan bli.
Jag valde slumpmässigt 4 år och alla bolag på large cap som faktiskt var med just det året(knapp 100st). Körde utan nollställ. Det blir lite bättre att inte ha med nollställa. En del av förklaringen är nog att antal affärer minska och därmed courtage och slipp. Sedan måste nog någon form av nollställning vara med. Annars kan aktier fastna och rankingen slutar att fungera.
Trendföljande eller inte tycker jag att risk/reward-profilen under längre tid får avgöra.
Fler affärer innebär större statiskt underlag. Sedan är det enkelt att själv labba så modellen fungerar som man vill.
Leave a comment:
-
Har testat på OMX S30 aktier, perioden 2019 1 Feb - 2020 18 feb
Har lite egenjusterade inställningar jämfört med original ROC,
syftet med uppgifterna är inte att kunna få samma resultat som mig i jämförande test utan att påvisa hur stor skillanden det blir som mönster av att koppla bort nollställ.
Och om möjligt föra dialog för varför denna förbättrade avkastning uppstår, ifall det kan vara något att använda i strategin.
avkastning ggr jämfört med sämsta kombination 2.53 ggr, jämfört med original 1.73 ggr
nollställ=mult(0,1) och {ny_mån}1
Resulat: 74 141 kr, 82 signaler
nollställ=mult(0,1) och ny_mån
Resultat: 74 141 kr, 82 signaler. Ger samma resultat i kr och signaler som ovanför kombination. EDIT: Ger olika positioner. t.ex. hålls några trendande aktier längre med bättre resultat t.ex. SWMA och GETI
nollställ=and(or(2_tim_innan,eqv(xtime(date(),h),15)),1) och {ny_mån}1
Resultat: 42 726 kr, 172 signaler
nollställ=and(or(2_tim_innan,eqv(xtime(date(),h),15)),1) och ny_mån
Resultat: 29 309 Kr 162 signaler
*ny_mån=not(eqv(aref(monthnumber(),1),monthnumber()))

EDIT: resultatet för de två första två testerna ser lika ut i kr och signaler, men skiljer sig åt innehavsmässigt. Har börjat jämföra grafer och jag tror att varianten som skriver vid ny månad håller positioner bättre.
Så om strategin för ROC är att vara trendande momentum strategi och hålla kvar i vinnare, anser jag baserat på mina tester att skripten med nollställ och {nymån}1 uppfyller det sämre.
Skulle nu vara kul att höra motargument eller dialog kring andra konsekvenser som jag missat.Last edited by jimmy; 2020-05-24, 15:34.
Leave a comment:

Leave a comment: