Allmänt meddelande

Collapse
No announcement yet.

RSI() funktionen - underliggande script - göra om skalning

Collapse
X
 
  • Filter
  • Klockan
  • Show
Clear All
new posts

  • RSI() funktionen - underliggande script - göra om skalning

    Hej,

    jag är färsk på NAT och scriptspråket.
    Är det någon som har tillgång till RSI() funktionens underliggande script?
    Min tanke är att göra om nuvarande "dubbel"(D) skalning +/-100 till "simple" (S) skalning 0-100 - då jag hellre jobbar med "simple" skalning för RSI().

    Alternativt om någon redan har gjort sitt eget RSI script med "simple" skalning som jag kunde få ta del av.

    Tack//

  • #2
    Jag lyckades bygga mitt eget RSI script med "simple" (S) skalning 0-100 enligt nedan script.

    i60(
    up_price=IF(GT(SUB(c,aref(c,1)),0),SUB(c,aref(c,1)),0)
    down_price=IF(GT(SUB(aref(c,1),c),0),SUB(aref(c,1),c),0)
    UP=mov(up_price,14,s)
    DOWN=mov(down_price,14,s)
    RSIV=MOV(SUB(100,DIV(100,ADD(DIV(UP,DOWN),1))),3,s)

    draw(RSIV,0,bsd)
    )

    Dock är det en "fuskvariant" som är mer volatil än Welles Wilder "renläriga" RSI. Jag jämförde min RSI variant med NAT's "fasta analysmetod" för RSI och kurvorna är identiska vilket innebär att NAT's "fasta analysmetod" för RSI inte heller är renlärig. Se bifogad skärmdump.

    I bifogad skärmdump är den röda grafen NAT's "fasta analysmetod" med en 14 perioders RSI graf med 3 perioders utjämning = ovan script vilket representeras av den blå grafen i Analys 2 området.

    Dock är jag nu överraskad att NAT's "fasta analysmetod" för RSI plötsligt har en ”simple” skalning 0-100 vilket inte var fallet för en vecka sedan. Bland annat var det NAT's "fasta analysmetod" för RSI som jag syftade på med ovan inlägg avseende havandes ”dubbel” skalning +/-100. Kanske Rikard vet om det är något som ”åtgärdats” med dagens utskick på ”Uppdatera programversion”?

    Tilläggas kan dock att den rena funktionen RSI() fortfarande ritar i "dubbel" skalning +/-100.

    Vad jag menar med ”renlärig” är att RSI formeln nyttjar Welles Wilder's egen "smoothing" moving average formel. Som nu fallet är med min variant på RSI samt NAT's "fasta analysmetod" för RSI är att BÅDA nyttjar funktionen för en vanlig Simple Moving Average =mov(,,s).

    Min målsättning är att bygga en RSI graf med Welles Wilder's egen "smoothing" moving average formel . Jag vet hur beräkningarna går till men är osäker på hur jag programmerar Welles Wilder's egen "smoothing" moving average formel - då formeln för första värdet tar ett SMA för att sedan gå över till Welles Wilder's egen "smoothing" moving average - och det är här jag undrar om någon kan vara behjälplig med denna del av scriptet?

    Tack//
    Attached Files

    Comment


    • #3
      Jag vet inte om det här kan vara till någon hjälp:

      "An n-period Wilder smoothing indicator produces similar values to a 2n period EMA.
      For example, a 14-period EMA has almost the same values as a 7-period Wilder Smoothing indicator."

      Med senaste uppdateringen av NAT följer EMA()-funktionen med, vilket innebär att i din formel borde du kunna ersätta vissa mov() med ema() i stället.

      Comment


      • #4
        rsiformel

        Höll på rätt mycket med RSI o extra objekt tidigare men fick aldrig ordning på det.

        Eml Urgurun Lasse har det tidigare sett ut så här

        http://www.autostock.se/vbulletin/sh...ra+objekt+macd

        OBS en gammal länk så vet inte om det ser annorlunda ut nu

        Här finns en tabell som visar hur uträkningen går tillhttp://stockcharts.com/school/doku.p...ngth_index_rsi

        Blandar man in EMA så blir det nog fel då det finns en viktningsfaktor i EMA
        som jag tror dessutom kan variera från program till program

        Comment


        • #5
          Ursprungligen postat av CALDERON Visa inlägg

          Dock är jag nu överraskad att NAT's "fasta analysmetod" för RSI plötsligt har en ”simple” skalning 0-100 vilket inte var fallet för en vecka sedan. Bland annat var det NAT's "fasta analysmetod" för RSI som jag syftade på med ovan inlägg avseende havandes ”dubbel” skalning +/-100. Kanske Rikard vet om det är något som ”åtgärdats” med dagens utskick på ”Uppdatera programversion”?

          Tilläggas kan dock att den rena funktionen RSI() fortfarande ritar i "dubbel" skalning +/-100.
          Funkar mina script efter den här ändringen, när jag använder dubbel skalning?
          fastrs:=mov(rsi(2),3,s)
          trigger_limit:=-75

          Comment


          • #6
            För att förtydliga vad jag är ute efter se bifogat RSI tabellexempel avseende Average Upward Pricechange samt Average Downward Pricechange beräkningar som kommer från Steven B. Achelis bok ”Technical Analysis from A to Z” och utgår från 5 perioder.

            För att få ett initialt Smoothed UPC samt ett initialt Smoothed DPC kör man ett enkelt glidande medelvärde (SMA) vilket resulterar i de rödmarkerade värdena 0.5750 samt 0.1750 i bifogad fil.

            Därefter ser Welles Wilder’s ”smoothing” moving average beräkningar stegvis ut som följer för de efterföljande grönmarkerade värdena:
            Smoothed UPC:
            1) 0,3125 - 0,5750 = -0,2625
            2) -0,2625 / 5 = -0,0525
            3) -0.0525 + 0,5750 = 0,5225
            Smoothed DPC:
            1) 0,0000 - 0,1750 = -0,1750
            2) -0,1750 / 5 = -0,035
            3) -0.035 + 0.1750 = 0,1400

            Frågan är hur skall scriptet se ut som initierar ett första enkelt glidande medelvärde (SMA) för att sedan gå över till Welles Wilder’s ”smoothing” moving average beräkningar för Smoothed UPC samt Smoothed DPC enligt ovan exempel?

            Mikola: Funkar mina script efter den här ändringen, när jag använder dubbel skalning?
            fastrs:=mov(rsi(2),3,s)
            trigger_limit:=-75
            Det borde det göra då som jag påpekar
            Calderon: Tilläggas kan dock att den rena funktionen RSI() fortfarande ritar i "dubbel" skalning +/-100.
            Tack//
            Attached Files

            Comment

            Working...
            X