SCRIPTGALLERIET
Denna del visar på lite olika varianter av vanliga tester man kan göra
med script. Dessa script kan också ses som komponenter att kombinera
ihop med andra delar för att göra det du tänkt dig.
Beskrivning: |
Close passerar enkelt medelvärde |
| Script |
mper1:=20 medel1:=MOV(C,mper1,S) test:=LT(L,medel1) mult(test,10) |
| Kommentar |
'mper1' kan sättas till valfri period Multiplikationen sist bestämmer höjden på stapeln.
Som du ser används 'L' dvs Low för testen. Detta för att stapeln varierar under sin livslängd. För att få bästa överstämmelse med verkligheten när du testar historiskt görs detta. Det är ju betalkursen som varierar under perioden och bildar Low. När du provar ut val av period kan du använda det fasta medelvärdet som kan kopplas på i verktygslisten. |
| Diagram |
Som det är skrivet ovan anpassar sig scriptet efter period-upplösningen i grafen.
Skalning 0-100 ger markeringar 10% höjd av området tack vare multiplikationen på slutet. Den gör ju att värdet för testet blir antingen 0 eller 10, istället för 0 eller 1. Kryssa för "Visa graf som flagga" för vertikala markeringar istället för kontinuerlig graf ritad som taggar.
|
| Bevakning |
Dagskurser: Precis som det är skrivet
Intraday: Omslut sista uttrycket med intradayprefix Ixx(----) där xx står för 1 eller flera siffror som anger minuter per period. |
| Exempel | |
| Kommentar |
Violett linje är 20 perioders medelvärde och scriptets röda markeringar undertill där Low är lägre än medelvärdet. I detta fallet med dagskurser så har ju Close varit Low någon gång under dagen och scriptet skall förståss markera detta. Detta gäller tester för under nivå.
För tester över nivå gäller det motsatta att det är High man skall testa med. |
| Styrka-svaghet | Fördel är om man köper när kursen är över medelvärdet så har man ett hyggligt skydd mot större förluster om man säljer vid signal. Och i en del fall med viss vinst. Nackdel är att det inte är vinstoptimerat eftersom man knappast säljer vid toppar. |
Beskrivning: |
Close passerar exponentiellt medelvärde |
| Script |
mper1:=20 medel1:=MOV(C,mper1,E) test:=LT(L,medel1) mult(test,10) |
| Kommentar |
'mper1' kan sättas till valfri period Multiplikationen sist bestämmer höjden på stapeln. När du provar ut val av period med en kurva kan du använda ett av scripten som följer med vid installation 'g) Medelvärde exponentiellt 20'. |
| Diagram |
Som det är skrivet ovan anpassar sig scriptet efter upplösningen i grafen.
Skalning 0-100 ger markeringar 10% höjd av området tack vare multiplikationen på slutet. Kryssa för "Visa graf som flagga"
|
| Bevakning |
Dagskurser: Precis som det är skrivet
Intraday: Omslut sista uttrycket med intradayprefix Ixx(----) där xx står för 1 eller flera siffror som anger minuter per period. |
| Exempel | |
| Kommentar | Blåstreckad linje är 20 perioders exponentiellt medelvärde och scriptets röda markeringar undertill där Low är lägre än medelvärdet. Violett linje är aritmetiskt medelvärde som jämförelse. Du ser tydligt hur mycket bättre exponentiellt medelvärde följer närliggande kursrörelse |
| Styrka-svaghet | Fördel är om man köper när kursen är över medelvärdet så har man en hygglig stopp om man säljer vid signal. Och i många fall med viss vinst. Nackdel är att det inte är vinstoptimerat eftersom man knappast säljer vid toppar även om exponentiellt medelvärde bättre följer i tiden närliggande kursrörelse. |
Beskrivning: |
Studs i Bollingerband |
| Script |
b1:=bolbands(20,2.0,x) i30(mult(b1,15)) |
| Kommentar |
'b1' ger sant om kursen korsar bandet. Multiplikationen sist bestämmer höjden på stapeln.
När du provar ut med en kurva kan du använda Bollingerband som slås av/på i knapplisten. |
| Diagram |
Som det är skrivet ovan är det strikt per 30-minuters intraday.
Skalning 0-100 ger markeringar 15% höjd av området tack vare multiplikationen på slutet. Kryssa för "Visa graf som flagga"
|
| Bevakning | Dagskurser: Ta bort intradayprefixet I30() på slutet. Intraday: Per 30-minuters perioder som det är skrivet |
| Exempel | |
| Kommentar | Violett linje är 20 perioders Bollingerband och scriptets röda markeringar undertill där kursen korsat bandet. Allt per 3 dagar 30-minuters intraday. |
| Styrka-svaghet | När Bollinger ger signal är det oftast att ta på allvar. |
Beskrivning: |
Studs i Bollingerband + hög RSI |
| Script |
b1:=bolbands(20,2.0,x) |
| Kommentar | 'b1' ger SANT om kursen korsar bandet. 'r2' ger SANT om RSI större än 60 'and(b1,r2)' fogar ihop villkoren så att båda måste vara SANT för att scriptet skall lösa ut. När du provar ut med en kurva kan du använda Bollingerband och RSI som slås av/på i knapplisten. |
| Diagram |
Som det är skrivet ovan är det strikt per 30-minuters intraday.
Skalning 0-100 ger markeringar 15% höjd av området tack vare multiplikationen på slutet.
Kryssa för "Visa graf som flagga".
|
| Bevakning | Dagskurser: Ta bort intradayprefixet I30() på slutet. Intraday: Per 30-minuters perioder som det är skrivet |
| Exempel | |
| Kommentar | Violett linje är 20 perioders Bollingerband och scriptets röda markeringar undertill där kursen korsat bandet plus att RSI var över 30. Grön linje är RSI 14 perioder. Allt per 3 dagar 30-minuters intraday. |
| Styrka-svaghet | När Bollinger ger signal är det oftast att ta på allvar. |
Beskrivning: |
Nyligen studs i Bollingerband + hög RSI+ fallande kort medelvärde |
| Script |
period:=5 tittabakåt:=10 b1:=bolbands(20,2.0,x) b2:=hhv(b1,tittabakåt) r1:=rsi(14) r2:=gt(r1,30) mnu:=mov(c,period,s) mdå:=mov(ref(c,1),period,s) mok:=lt(mnu,mdå) i30(mult(and(and(b2,r2),mok),15)) |
| Kommentar | 'b1' ger SANT om kursen korsar bandet.'b2' ger SANT om kursen korsar bandet någon gång inom 'tittabakåt' perioder. Här 10 perioder. 'r2' ger SANT om RSI större än 30 'mok' ger SANT om 5-perioders medelvärde faller 'and(and(b1,r2),mok)' fogar ihop villkoren så att alla måste vara SANT för att scriptet skall lösa ut. När du provar ut med en kurva kan du använda Bollingerband och RSI och medelävrde som slås av/på i knapplisten. |
| Diagram |
Som det är skrivet ovan är det strikt per 30-minuters intraday.
Skalning 0-100 ger markeringar (röda) 15% höjd av området tack vare multiplikationen på slutet. Grön kurva under diagrammet är RSI(14). Blå kurva i diagrammet är 5-perioders glidande medelvärde. Kryssa för "Visa graf som flagga"
|
| Bevakning | Dagskurser: Ta bort intradayprefixet I30() på slutet. Intraday: Per 30-minuters perioder som det är skrivet |
| Exempel | |
| Kommentar | Violett linje är 20 perioders Bollingerband och scriptets röda markeringar undertill där kursen korsat bandet plus att RSI var över 30. Grön linje nedtill är RSI 14 perioder och bland staplarna 5 perioders medelvärde. Allt per 3 dagar 30-minuters intraday. |
| Styrka-svaghet | Bollinger ger bra signal om att något är på gång. En kontroll att det finns styrka med RSI och att kort medel börjat falla flyttar säljsignalen förbi toppen. |
Beskrivning: |
Jättestuds i Bollingerband |
| Script |
krossfaktor:=0.8 b1:=bolbands(20,2,u) topp:=sub(h,mult(sub(h,l),krossfaktor)) i30(mult(gt(topp,b1),15)) |
| Kommentar | 'krossfaktor' bestämmer hur mycket kursen måste ha passerat bandet för att ge signal. "topp" beräknar kursen då man är 80% från High för perioden. Om denna kursnivå är högre än övre bollinger så är 80% av stapeln över bollinger.När du provar ut med en kurva kan du använda Bollingerband som slås av/på i knapplisten. |
| Diagram |
Som det är skrivet ovan är det strikt per 30-minuters intraday.
Skalning 0-100 ger markeringar (röda) 15% höjd av området tack vare multiplikationen på slutet. Kryssa för "Visa graf som flagga"
|
| Bevakning | Dagskurser: Ta bort intradayprefixet I30() på slutet. Intraday: Per 30-minuters perioder som det är skrivet |
| Exempel | |
| Kommentar | Violett linje är 20 perioders Bollingerband och scriptets röda markeringar undertill där kursen korsat bandet minst 80%. Allt per 3 dagar 30-minuters intraday. |
| Styrka-svaghet | Bollinger ger bra signal om att något är på gång. Här en kontroll att det inte bara nuddar bandet utan överskrider med vald dignitet. |
Ger exempel på metoder som inte finns som ren scriptfunktion från början.
Beskrivning: |
Vertical-Horizontal Filter |
| Script |
period:=28 |
| Kommentar |
Multiplikationen sist skalar till värden mellan 0-100.
Syftar till att indikera om marknaden trendar eller går sidledes. Ju högre värden ju mer trend över den angivna perioden. Om volatiliteten varit hög men slutkursen stannar ganska nära dag för dag är det sidledes marknad som gjord för trading. |
| Diagram |
Som det är skrivet ovan anpassar sig scriptet efter period-upplösningen i grafen.
|
| Bevakning | |
| Exempel | |
| Kommentar | Blå linje är 28 perioders VHF. |
| Styrka-svaghet | Vid hastigt sjunkande VHF kan man likväl ta hem vinsten i långa positioner. Som en hjälp för att välja övriga indiktorer är den OK. |
Beskrivning: |
ADX |
| Script | p1:=14 mov(dx(p1),p1,e) |
| Kommentar |
Ett exponentiellt medelvärde på DX() ger Average Directional Movement Index.
Populär trendindikator |
| Diagram |
Som det är skrivet ovan anpassar sig scriptet efter period-upplösningen i grafen.
|
| Bevakning | |
| Exempel | |
| Kommentar | Blå linje är 14 perioders ADX per 15-minuters intraday 3 dagar. Vändpunkt ned visar omslag i trend. Märk att höga ADX-värden visar på både stark trend upp eller ned. Används ofta tillsammans med PlusDI och MinusDI-indikatorn visad bland volymstaplarna. De motsvaras av scriptfunktionerna PDI() och MDI(). |
| Styrka-svaghet | ADX används främst tillsammans med andra indikatorer. |
Beskrivning: |
ADXR |
| Script |
p1:=13 a1:=mov(dx(p1),p1,e) a2:=mov(aref(dx(p1),p1),p1,e) ar1:=div(add(a1,a2),2) mov(ar1,p1,s) |
| Kommentar |
En slags momentum på ADX() självt i två punkter.
Nivåer på ADXR anger val av tradingsystem enligt Welles Wilder. |
| Diagram |
Som det är skrivet ovan anpassar sig scriptet efter period-upplösningen i grafen.
|
| Bevakning | |
| Exempel | |
| Kommentar | Röd linje genom den blå är 14 perioders ADXR per 15-minuters intraday 3 dagar. |
| Styrka-svaghet | ADXR används främst tillsammans med andra indikatorer i Welles Wilders Directional Movement System. |
Beskrivning: |
TRIX |
| Script |
period:=10 m1:=mov(c,period,e) m2:=mov(m1,period,e) m3:=mov(m2,period,e) mult(roc(m3,1,%),10) |
| Kommentar |
Tre exponentiella medelvärden på varandra och procentuella skillnaden i två senaste perioderna.
Multiplikation med 10 ger skalan tiondels procent. |
| Diagram |
Som det är skrivet ovan anpassar sig scriptet efter period-upplösningen i grafen. Skalning = Automatisk
|
| Bevakning | |
| Exempel | |
| Kommentar | Blå linje i volymfältet är 10 perioders TRIX per 15-minuters intraday 3 dagar. |
| Styrka-svaghet | Reagerar mycket snabbt på omslag i trend. |
Beskrivning: |
CCI |
| Script |
period:=14 tp:=div(add(c,add(h,l)),3) mt1:=mov(tp,period,s) adif:=mov(abs(sub(tp,mt1)),period,s) cci:=mult(adif,0.015) div(sub(tp,mt1),cci) |
| Kommentar | Commodity Channel Index jämför prisets avvikelse mot det statistiska medelvärdet. |
| Diagram |
Som det är skrivet ovan anpassar sig scriptet efter period-upplösningen i grafen.
|
| Bevakning | |
| Exempel | |
| Kommentar | Röd linje är 14 perioders CCI per 15-minuters intraday 3 dagar. |
| Styrka-svaghet | Reagerar mycket snabbt på omslag i trend. |
Alternativ till Close-kursen
Per intraday så har ju Close-kursen inte samma psykologiska betydelse
som i dagskurs-sammanhang. För dagskurser handlar det ju om att
marknaden stänger och öppnar först imorgon. Per intraday betyder just
slutet på en 15-minuters stapel inget särskilt ur psykologiskt perspektiv.
Här följer några alternativ som ofta används. Det går utmärkt att
använda dessa script som komponenter och göra medelvärden och
allt annat baserat på dessa istället.
Beskrivning: |
Typical Price |
| Script | Mov(div(add(l,h),2),c,3) |
| Kommentar | Typiska Priset förekommer i en mängd analysmetoder. Det är ett medelvärde mellan Close, High och Low helt enkelt. |
| Diagram |
Som det är skrivet ovan anpassar sig scriptet efter period-upplösningen i grafen.
|
| Bevakning | |
| Exempel | |
| Kommentar | Röd linje är Vägd Close per 2 dagars intradaykurser. Du ser avvikelse från Close-flaggan. |
| Styrka-svaghet |
Beskrivning: |
Median Price |
| Script |
mp1:=div(sub(h,l),2) add(l,mp1) |
| Kommentar |
Medianpriset är helt enkelt mittpunkten på varje periods stapel.
Per intraday så har ju Close-kursen inte samma psykoligiska betydelse som i dagskurs-sammanhang. Då handlar det ju om att marknaden stänger och öppnar först imorgon. Per intraday betyder just slutet på en 15-minuters stapel inget särskilt ur psykologiskt perspektiv. |
| Diagram |
Som det är skrivet ovan anpassar sig scriptet efter period-upplösningen i grafen.
|
| Bevakning | |
| Exempel | |
| Kommentar | Gul linje är mediankursen per 15-minuters intraday 2 dagar. Du ser linjen genom mittpunkten i varje stapel. |
| Styrka-svaghet |
Beskrivning: |
Weighted Close |
| Script |
c1:=add(mult(c,2) div(add(l,h),c1),4) |
| Kommentar | Vägd Closekurs där Close värderas dubbelt så mycket som High och Low. Samma princip som Typical Price. |
| Diagram |
Som det är skrivet ovan anpassar sig scriptet efter period-upplösningen i grafen.
|
| Bevakning | |
| Exempel | |
| Kommentar | Gul linje är Vägd Close per 15-minuters intradaykurser 2 dagar. Du ser avvikelse från Close-flaggan. |
| Styrka-svaghet |
Flytande stoploss
Vi ger här exempel på ett antal principer på flytande stoploss.
Gemensamt för alla är att de har förmågan att anpassa en
stoppgräns och följa med kursen upp. När kursen vänder ned
och bryter stoppgränsen har man säljsignal.
Beskrivning: |
Fall från dagshögsta |
| Script |
faktor:=0.98 mult(h,faktor) |
| Kommentar |
Scriptet ger kurva på stopnivån
En mycket enkel princip för att lägga ett stopnivå 2% under högstakursen för perioden visas ovan. Genom att lägga nivån relativt högsta nivån för dagen så kan kursen röra sig 2% utan att stoppen löser ut. Denna enkla princip fungerar bäst på dagskurser dvs där 'h' då står för högsta för dagen. Du får då automatiskt effekten att stopnivån följer med uppåt men inte nedåt. TIPS! Skall denna ritas intraday för att se var exakt den löser ut så kryssa för "Animera dagskurser". Då behandlas scriptet som ett dagskursscript men varje intraday-dag animeras fram tick för tick. |
| Diagram |
Scriptet anpassar sig efter period-upplösningen i grafen och man måste därför 'animera dagskurser' (det förkryssat) för att titta på det intraday. Skala 'Enligt kurser'
|
| Bevakning | faktor:=0.98 level:=mult(h,faktor) lt(c,level) Inget intraday-prefix används. Då körs det mot dagskurserna. |
| Exempel | |
| Kommentar | Röda linjen är stoplossnivån 2% under dagshögsta. Kom ihåg att kryssa för "Animera dagskurser" för att scriptet skall köras mot dagskurserna och animeras fram. |
| Styrka-svaghet | Fördelen är enkelheten. Gå in när kursen är över nivån och gå ur när den passeras. Ett komplett tradingsystem. Nackdelen är att man måste gå in före dagshögsta nåtts, dvs vara med från dagens början i princip. En annan nackdel kan vara om man vll kombinera andra villkor ihop med stoppen så måste de också vara dagskursbaserade. |
Beskrivning: |
Genombrott stoppnivå baserat på första topp |
| Script |
ph:=20 t1:=top(h,ph,1) aref(roundprice(t1,-25),1) |
| Kommentar |
Scriptet ger kurva på stopnivån och tittar 20 periodern bakåt.
't1' ger kursvärdet på första toppen bakåt baserat på dataserien High för varje period. RoundPrice() returnerar ett värde 25 prisintervall (tick) nedanför värdet för toppen. Aref() tar värdet för förra perioden. Detta för att inte innevarande period skall inverka. Om man föredrar en procentbaserad stoppnivån i förhållande till toppen är det inga problem. Byt RoundPrice() mot en MULT(t1,faktor) där 'faktor' är 0.98 för 2% som exempel. |
| Diagram |
Scriptet anpassar sig efter period-upplösningen i grafen. Skala 'Enligt kurser'
|
| Bevakning |
ph:=20 t1:=top(h,ph,1) Om inget intraday-prefix används körs det mot dagskurserna. |
| Exempel | |
| Kommentar | Röda linjen är stoplossnivån 25 'snäpp' under senaste topp. Här 2 dagar intraday 30-minuters. |
| Styrka-svaghet | Gå ur när nivån passeras. |
Beskrivning: |
Stopreversal baserat på första topp |
| Script |
ph:=20 t1:=topbars(h,ph,1) b1:=bottombars(l,ph,1) Mult(lt(t1,b1),15) |
| Kommentar |
Scriptet ger SANT om en topp ligger närmare i tiden är en botten om man tittar 20 periodern bakåt.
't1' ger antal perioder bakåt till första toppen bakåt baserat på dataserien High för varje period. 'b1' gör på motsvarande sätt för närmaste botten baserat på dataserien Low. |
| Diagram |
Scriptet anpassar sig efter period-upplösningen i grafen. Skala '0-100' ger flaggor i 15% höjd när scriptet blir SANT.
|
| Bevakning | |
| Exempel | |
| Kommentar | Röda linjen är hög nivå när topp ligger närmast i tiden och det är sälj-läge. Här 3 dagar intraday 15-minuters. |
| Styrka-svaghet | Gå ur när nivån hög ger kanske onödigt känslig reaktion ibland. Men bra säljsignal. |
Beskrivning: |
Stopreversal baserat på första topp hos medelvärde |
| Script |
mperiod:=5 maxbakåt:=20 data:=mov(c,mperiod,s) t1:=topbars(data,maxbakåt,1) b1:=bottombars(data,maxbakåt,1) mult(lt(t1,b1),15) |
| Kommentar |
Scriptet ger SANT om en topp ligger närmare i tiden är en botten i dataserie som är medelvärde på Close.om man tittar 20 periodern bakåt.
't1' ger antal perioder bakåt till första toppen bakåt baserat på dataserien 5-perioders medel på Close. 'b1' gör på motsvarande sätt för närmaste botten baserat på samma dataserie. |
| Diagram |
Scriptet anpassar sig efter period-upplösningen i grafen. Skala 0-100
|
| Bevakning | |
| Exempel | |
| Kommentar | Lila linjen är 5-perioders medelvärde på Close. Röda flaggor nedtill är larm när topp ligger närmast i tiden och det är sälj-läge. Här 4 dagar intraday 60-minuters. |
| Styrka-svaghet | Lätt att anpassa trögheten med ett medelvärde på olika många perioder och val av periodupplösning. Utmärkt bra säljsignal. |
Beskrivning: |
Stopreversal baserat linjär regression |
|
Script |
maxbakåt:=5 data:=c LinReg(data,maxbakåt) |
| Kommentar |
Scriptet ger en kurva baserat på ett försök att lägga bästa trendlinje rakt genom kurserna i dataserien 'data' i perspektivet 'maxbakåt'. Detta sker i varje punkt och det blir därför en kurva och inte räta linjer.
'data' kan ges en annan dataserie än Close som här. |
| Diagram |
Scriptet anpassar sig efter period-upplösningen i grafen. Skala 'Enligt kurser'.
|
| Bevakning | |
| Exempel | |
| Kommentar | Orange linjen visar bästa trendlinjen genom varje punkt. Här per 60 minuters intradaykurser 8 dagar bakåt. Som du ser blir det som en reversal. När kurserna går under linjen är det sälj. När Low ligger ovanför är det en klar köpsignal. |
| Styrka-svaghet | Visar mycket bra trendbrott och punkter för Entry och Exit. Lätt att anpassa på vilken sikt man vill handla. |
Tidsberäkningar
Här följer diverse beräkningar på tider användbara i script.
Beskrivning: |
Tid från börsens stängning |
| Script |
mt1:=mult(sub(market(c),frac(d)),1440) |
| Kommentar |
'mt2' här blir SANT när man är inom 60 minuter från stängning.
Infoga detta scriptet med andra och använd namnet 'mt2' i en logisk funktion som AND() eller OR() för att villkora med övriga delar i scriptet. 'mt1' har antal minuter från stängning och testen görs i 'mt2'. Market(c) ger stängningstiden i form av ett flyttal som anger hur långt in på dygnet man är. Det ger korrekt tid även för korta dagar som dag före röd dag osv. Klockan 12.00 på dagen är således värdet '0.5'. 'D' är konstanten att använda för att ta fram tidstämpeln. Frac(d) tar tidstämpeln för innevarande period. Det filtrerar bort datumet genom Frac()-anropet. En enkel subtraktion får fram tiden som ett flyttal Mutliplikation med 1440 ger denna tidsrymd i minuter eftersom ett dygn är 1440 minuter. |
| Diagram | Som det är skrivet ovan anpassar sig scriptet efter period-upplösningen i grafen. |
| Bevakning | |
| Exempel | |
| Kommentar | |
| Styrka-svaghet |
