Allmänt meddelande

Collapse
No announcement yet.

Totala värdet av en portfölj

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

  • Totala värdet av en portfölj

    Sitter lite fast med kod.
    Ex avser pair-trading och jag vill automatiskt ta hem vinst vid x kr av 2 eller flera öppna positioner
    Hur skrivs koden lämpligast, dvs när a+b+c är större än x så säljs alla öppna ordar.
    // Mvh Kristian

  • #2
    Det luriga är blankningspositionen som inte kan mätas enkelt med cash(a). I Alpha Shark görs beräkningarna utspridda på de olika scripten som är anslutna till resp tillgång. I princip:

    värde=mult(portfolio(v),c)

    gångar antal med pris för att få värdet på just den tillgången. Det blir negativt för den blankade, men går enkelt att "vända" med abs().

    För att mäta hela kontot inkl alla öppna positioner kan man använda:

    kontovärde=sub(add(cash(a),cash(t)),mult(2,cash(s))))

    som fungerar perfekt på testkonton och skarpa konton där kreditsaldo (belåning eller terminssaldo) inte används.

    Men tipset är att kolla i Alpha. Där skickas värdet och vinst för DAX via global cell till Long OMX-scriptet som sammanställer totala vinsten på hela "positionen".

    Comment


    • #3
      Tack!
      Tänkte inte blanka per definition, bara köra minisar eller Xact
      // Kristian

      Comment


      • #4
        För att veta vinsten just nu måste köpkursen användas för börshandlade produkter, Dvs det man får om likviderar nu. För enskilda aktier blir det köp- eller säljkurs beroende på lång eller kort.

        Xact går inte blanka(inte i normala fall). Spreaden/courtage gör nog att det inte går att tjäna pengar genom att tex köpa bull och köpa bear. Nu vet jag inte hur du tänkt köra. Det är det market maker gör hela dagarna.

        Minisar får beräknas från köpkursen, dvs det man får om säljer positionen. Kanske behöver en spreadkontroll så att det inte blir konstgjorda vinster/förluster:

        mult(portfolio(v),b)

        Comment


        • #5
          Ursprungligen postat av Rikard Autostock Visa inlägg
          Det luriga är blankningspositionen som inte kan mätas enkelt med cash(a). I Alpha Shark görs beräkningarna utspridda på de olika scripten som är anslutna till resp tillgång. I princip:

          värde=mult(portfolio(v),c)

          gångar antal med pris för att få värdet på just den tillgången. Det blir negativt för den blankade, men går enkelt att "vända" med abs().

          För att mäta hela kontot inkl alla öppna positioner kan man använda:

          kontovärde=sub(add(cash(a),cash(t)),mult(2,cash(s))))

          som fungerar perfekt på testkonton och skarpa konton där kreditsaldo (belåning eller terminssaldo) inte används.

          Men tipset är att kolla i Alpha. Där skickas värdet och vinst för DAX via global cell till Long OMX-scriptet som sammanställer totala vinsten på hela "positionen".

          Formeln fungerar inte på skarpt konto om det finns riktiga blankningar. Dvs inte bara terminssaldo och kreditsaldo. Det finns olika sätt.


          Edit: Fungerar inte heller med långa akitepositioner med belåningsvärde.
          Edit: Kollade skarpt idag. Blankningar av aktier ger negativ cash(a)
          Last edited by Henric; 2020-08-12, 10:41.

          Comment

          Working...
          X