Arama sonucu : 2019 madde; 1 - 8 arası.

Konu: Matriks Formülleri

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Bu gönderileri taşımayı uygun buldum

     Alıntı Originally Posted by uufuk Yazıyı Oku
    Matriksde olmayan fonksiyonlardan Precision [prec()] simulasyonla elde edecegiz...

    Metastock yardımdaki tanımı...
    ------------------------------------------
    SYNTAX prec( DATA ARRAY, PRECISION )

    FUNCTION Truncates DATA ARRAY to PRECISION decimal places.

    EXAMPLE The formula "SYNTAX prec( DATA ARRAY, PRECISION )

    FUNCTION Truncates DATA ARRAY to PRECISION decimal places.

    EXAMPLE The formula "prec( 10.12981, 2 )" returns 10.120. The formula "prec( 10.12981, 4 )" returns 10.12980. Small binary rounding errors may cause some minor distortion in the decimal portion of any number stored in a computer
    . The formula "prec( 10.12981, 4 )" returns 10.12980. Small binary rounding errors may cause some minor distortion in the decimal portion of any number stored in a computer
    ----------------------
    Bu fonksiyon ondalık sayının,ondalık basamak hassasiyetini ayarlar...
    prec( 10.12981, 2 )------> 10.12 ---->ondalık 2 basamak
    prec( 10.12981, 4 )-----> 10.1298 ---->ondalık 4 basmak

    PRECISION ile ilgili dostların soruları geçmişde cevaplanmışdı....
     Alıntı Originally Posted by küçük_e Yazıyı Oku
    Ufuk Bey selamlar...
    fiyat bilgisini virgülden sonra kaç basamak olacağını nasıl yazabiliriz? mesela 90450 olan fiyatı indikatör de 90 olarak yada 90,4 olarak nasıl yazdırabiliriz. yardımlarınız için teşekkür ederim
     Alıntı Originally Posted by uufuk Yazıyı Oku
    c; <====fiyat orijinal gösterim parite grafiğinden takip et , 4 hane
    int(c*10)/10; <====1hane
    int(c*100)/100; <====2hane
    int(c*1000)/1000; <====3hane
    int(c*10000)/10000 <====4hane
     Alıntı Originally Posted by mystic Yazıyı Oku
    Ufuk hocam selamlar..

    Normalde pi sayısı :3.1415926535 8979323846 2643383279 5028841971 6939937510 5820974944 5923078164 şeklinde hani..

    Bunu pi=3.14 olarak hesaplatarak kullanmak için hangi fonksiyonu kullanmalıyız ?

    Bir bölme işlemi yaptım pi sayısı gibi çok haneli bir sonuç çıktı..

    Sonuçu aşağıya ya da yukarıya yuvarlamak değil sadece virgül sonrası 2 haneyi kullanmaya ihtiyacım var ?

    Alta link koydum ama matriks'te precision fonksiyonu çalışmıyor :vurkafa:

    C=16.5370
    round(C) returns 17
    prec (C,2) returns 16.53 instead of 16.54 :grrr:

    Tüm syntax'ı buldum.. İhtiyacı olanlar için link burada dursun :

    http://www.metastock.ca/download/Met...ula-Primer.pdf
     Alıntı Originally Posted by uufuk Yazıyı Oku
    int(16.5370*100)/100;
    int(106.5375*100)/100;
    int(11106.5375*100)/100

  2. #2
    Bu gönderileri taşımayı uygun buldum



     Alıntı Originally Posted by uufuk Yazıyı Oku
    Matriksde olmayan fonksiyonlardan Alert [alert()] simulasyonla elde edecegiz...

    Metastock yardımdaki tanımı..
    -----------------------------------
    SYNTAX alert( EXPRESSION, PERIODS )

    FUNCTION Extends a "true" result of EXPRESSION for the specified number of periods. This true result is held true over the number of periods specified even if a "false" result is generated.

    EXAMPLE alert( cross(rsi(14),70),5 )
    ---------------------------

    Eski gönderide detaylı açıklama var...
    Buraya alıntılıyorum...




     Alıntı Originally Posted by uufuk Yazıyı Oku
    Sistemler ve indikatörler oluşturulurken iki data birbiriyle karşılaştırılır.
    Karşılaşacagımız çıktılar, doğru(TRUE) yada yanlış (FALSE) dır.

    Metastock da aşağıdaki işlemlerin çıktısı:
    Cross(Data1,Data2)--->TRUE=1 FALSE=0
    Data1 >= Data2--->TRUE=1 FALSE=0
    Data1 = Data2--->TRUE=1 FALSE=0
    Data1 < Data2--->TRUE=1 FALSE=0
    Data1 <= Data2--->TRUE=1 FALSE=0 dır.

    Matriks de aşağıdaki işlemlerin çıktısı:
    Cross(Data1,Data2)--->TRUE=1 FALSE=0
    Data1 >= Data2--->TRUE=-1 FALSE=0
    Data1 = Data2--->TRUE=-1 FALSE=0
    Data1 < Data2--->TRUE=-1 FALSE=0
    Data1 <= Data2--->TRUE=-1 FALSE=0 dır.
    Daha önce açıklamıştık.....

    Yani diyorki:
    alert (cross(rsi(15),70),5)
    Bir barda RSI(15) 70i geçerse "true" değerini alır, cıktı değeri "1"olur.
    hemen sonraki barda 70den düşük olsa da "1" değerini muhafaza et.
    alert (cross(rsi(15),70),5) kaç bar muhafaza et:5


    Şimdi de HHV(Data,Period) veya LLV(Data,Period) fonksiyonları ile ALERT fonksiyonunu simule edeceğiz.
    ALERT(Cross(Data1,Data2),5) eşittir HHV(Cross(Data1,Data2),5)
    ALERT(Data1 >= Data2,5) eşittir LLV(Data1 >= Data2,5)
    ALERT(Data1 = Data2,5) eşittir LLV(Data1 = Data2,5)
    ALERT(Data1 < Data2,5) eşittir LLV(Data1 < Data2,5)
    ALERT(Data1 >= Data2,5) eşittir LLV(Data1 >= Data2,5)

    Sanırım alert kabusunuz bitmişdır.......

  3. Merhabalar, Aşağıdaki formulü al sat için system testerda denedim ancak çok fazla ve gereksiz işlem yapıyor. Göstergede 0 çizgisi altında ve üstünde +2 ve -2 ye kadar referans çizgileri mevcut. Sinyalleri elemek için al için 0 ve-1 aralığındaki sinyalleri sat içinde 0 ve +1 aralığındaki sinyalleri görmezden gelmesini nasıl bir formülle sağlayabilirim. Teşekkürlermovs.jpg
    len:=10;
    ma1period :=9;
    ma2period:=15;
    maxh:=hhv(high,10); minl:=llv(low,10);
    value:=0.33*2*((c-minl)/(maxh-minl)-0.5)+0.67*prev;
    fish:=0.5*log((1+value)/(1-value))+0.5*prev;
    ma1:=mov(fish,9,s);
    ma2:=mov(ma1,15,w);
    L1:=fish;
    L2:=fish*-(fish>0);
    L3:=fish*-(fish<0);
    L4:=ma1 ;
    L5:=ma2 ;
    L6:=0;
    Cross(L1,L4)

  4. #4
     Alıntı Originally Posted by mhmmtygt Yazıyı Oku
    Merhabalar, Aşağıdaki formulü al sat için system testerda denedim ancak çok fazla ve gereksiz işlem yapıyor. Göstergede 0 çizgisi altında ve üstünde +2 ve -2 ye kadar referans çizgileri mevcut. Sinyalleri elemek için al için 0 ve-1 aralığındaki sinyalleri sat içinde 0 ve +1 aralığındaki sinyalleri görmezden gelmesini nasıl bir formülle sağlayabilirim. Teşekkürlermovs.jpg
    len:=10;
    ma1period :=9;
    ma2period:=15;
    maxh:=hhv(high,10); minl:=llv(low,10);
    value:=0.33*2*((c-minl)/(maxh-minl)-0.5)+0.67*prev;
    fish:=0.5*log((1+value)/(1-value))+0.5*prev;
    ma1:=mov(fish,9,s);
    ma2:=mov(ma1,15,w);
    L1:=fish;
    L2:=fish*-(fish>0);
    L3:=fish*-(fish<0);
    L4:=ma1 ;
    L5:=ma2 ;
    L6:=0;
    Cross(L1,L4)



    Kod:
    len:=10;  ma1period :=9 ;   ma2period:=15;    maxh:=hhv(high,10); minl:=llv(low,10);
    value:=0.33*2*((c-minl)/(maxh-minl)-0.5)+0.67*prev;   fish:=0.5*log((1+value)/(1-value))+0.5*prev;
    ma1:=mov(fish,9,s);  ma2:=mov(ma1,15,w);  L1:=fish;  L2:=fish*-(fish>0);
    L3:=fish*-(fish<0);  L4:=ma1 ;  L5:=ma2 ;  L6:=0;
    Cross(L4,L1) and (L1 => 1);   Cross(L1,L4) and (L1 <= -1)
    Dürüstlük pahalı bir mülktür, ucuz insanlarda bulunmaz. Honore Balssa

  5. Günaydın,

    Matriks de 10 yıllık veri ile nasıl bacttest yapabiliriz ?

    teşekkürler

  6. Teşekkürler, emeğinize sağlık.

Yer İmleri

Yer İmleri

Gönderi Kuralları

  • Yeni konu açamazsınız
  • Konulara cevap yazamazsınız
  • Yazılara ek gönderemezsiniz
  • Yazılarınızı değiştiremezsiniz
  •