Allmänt meddelande

Collapse
No announcement yet.

Exit baserad på vinst och tid?

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

  • #91
    Hej, Vill att mitt system ska blockera signal om priset både har varit över motståndsnivå och under stödnivå de senaste 25 minuterna.

    motstånd=aref(Freq(c,20,10000.75,h),1)

    över_nu=gt(c,motstånd)

    stöd=aref(Freq(c,20,10000.75,l),1)

    under_nu=lt(c,stöd)
    ne1=aref(llv(gt(c,över_nu),25),1)
    ne2=aref(llv(lt(c,under_nu),25),1)

    tacksam för svar!

    Comment


    • #92
      Hej, om jag ligger blankad och har en stoploss som vill sälja när vinsten är på 0,05 % är det rätt nedan då , eller fungerar det bara på long sidan?

      sälj=lasttrade(s,p)
      vinsten=sub(sälj,c)
      vinstvillkor=ge(mult(div(vinsten,sälj),100),0.05)

      Comment


      • #93
        Ser korrekt ut!

        Comment


        • #94
          Hej, vill mäta skillnaden mellan 20 perioders högsta vs 20 perioders lägsta i procent. Vad har jag gjort fel?

          styrka=hhv(aref(h,20),1)
          svaghet=llv(aref(1,20),1)
          skillnad=diff(styrka,svaghet)

          Comment


          • #95
            Du testar på värde 20-perioder bakåt, så det är bara lite syntax-fel:

            styrka=hhv(aref(h,1),20)
            svaghet=llv(aref(1,1),20)
            skillnad=diff(styrka,svaghet)

            Comment


            • #96
              tack, men den ritar fortfarande inte ut något.

              visa graf som flagga
              skalning: automatisk

              Comment


              • #97
                Såg ett fel till:

                skillnad=diff(styrka,svaghet)
                Diff() är inte någon funktion som finns, så det funkar inte. Du kan använda tex Sub() eller Div().

                Är det procentuellt du vill ha ut så Div(). Då kommer värdet ut som tex 1.0734234 som motsvarar 7,34%.

                Vill man ha det direkt i procentsats kan man ta bort 1:an och gånga med 100:

                skillnad=mult(sub(div(styrka,svaghet),1),100)


                Och jag skulle väl kanske inte använda Rita som flagga, utan bara låta den rita kurvan.

                Comment


                • #98
                  Hej , Har labbat lite och nu försöker jag att endast ta signal om den motsatta signalen dvs short i detta fall , har vinst på 0.10 %. Är vinsten 0.10 % så får köp signal tas. Vill ha motsvarande på short sidan. mvh

                  { läs av innehav }


                  { läs in close från OMXS30 }
                  close:=cmpref(c,1,a)



                  ej_innehav:=le(portfolio(v),0)

                  { definiera tidpunkter }
                  kl0900:=gt(frac(date()),0.3031)
                  kl1723:=lt(frac(date()),0.6152)
                  tidspärr:=5


                  lt1:=LastTrade(B,D)
                  minSedanKöp:=mult(sub(date(),lt1),1440)
                  tid_ok:=Gt(minSedanKöp,tidspärr)

                  i1(


                  { definiera medelvärden }


                  mv1=mov(c,20,s)


                  ovanför1=llv(gt(close,mv1),1)

                  rc1=roc(close,1)

                  rc_över1=gt(rc1,0.01)

                  r1=rsiw(14)
                  r2=lt(r1,35)


                  sälj=lasttrade(s,p)
                  vinsten=sub(sälj,c)
                  vinstvillkor=ge(mult(div(vinsten,sälj),100),0.10)


                  köp1=and(and(r2,r2),vinstvillkor)

                  köp2=and(köp1,ej_innehav)

                  mult(köp2,15)
                  )

                  {@A(1,OMX Stock )}

                  Comment


                  • #99
                    Det ser rätt ut, beräkningen av vinstvillkor är helt ok.

                    Däremot skulle jag inte använda en variabel som heter R2 eftersom det riskerar att krocka med funktionen R2() i compilern. Den tror jag du behöver döpa om.

                    Comment


                    • Ok. får trots ändringar inga signaler, vad kan det bero på?

                      Comment


                      • Prova att koppla förbi villkor ett efter ett tills du får signaler så går det att ringa in lite.

                        Comment


                        • Har egentligen bara ett villkor just nu förutom vinstvillkor och det blir inga signaler när jag lägger till vinstvillkor, varken i grafen eller i bänken. Behöver jag lägga till något i scriptet som gör att den tar signal?

                          Har även försökt med nedanstående, men blir inte heller några affärer då.

                          skillnad=gt(abs(div(sub(c,lasttrade(s,p)),lasttrade(s,p))),0.001)
                          Last edited by larry; 2018-08-25, 20:10.

                          Comment


                          • Det krävs en blankad position för att det ska slå till. Kanske lägga till en OR() mot vinstvillkoret och testa om innehavet är exakt noll:

                            Or(vinstvillkor,eqv(portfolio(v),0))

                            Last edited by Rikard Autostock; 2018-08-25, 21:05.

                            Comment


                            • Försöker du göra cover med scriptet? ej_innehav skulle jag isf sätta till -1 istället för 0 i le-villkoret. Om du vill ha det sant när du faktiskt har blankat innehav alltså. :-) Ett villkor som blir sant när kontot har 0 i innehav skulle jag sätta eqv(portfolio(v),0).
                              Last edited by walle; 2018-08-25, 21:02.

                              Comment


                              • Ursprungligen postat av Rikard Autostock Visa inlägg
                                Det krävs en blankad position för att det ska slå till. Kanske lägga till en OR() mot vinstvillkoret och testa om innehavet är exakt noll:

                                Or(vinstvillkor,eqv(portfolio(v),0))

                                Får det inte att fungera riktigt, när jag lägger till ett or villkor så blir det en massa signaler, tar jag and så blir det inga alls.

                                Comment

                                Working...
                                X