Sayfa 76/596 İlkİlk ... 2666747576777886126176576 ... SonSon
Arama sonucu : 4768 madde; 601 - 608 arası.

Konu: İDEAL veri terminalinde /Sistem/İndikatör/Robot

  1.  Alıntı Originally Posted by alekss Yazıyı Oku
    ---------
    sayın keçi yardımcı olma sansınız olursa seviniriz

    Bullish Engulfing ve Bearish Engulfing
    ideal formullerini paylaşabilecek arkadaş olursa seviniriz


    ben bir ideal çalışanı olsaydım yapacagım ilk iş bu olurdu
    ideal kullanıcılqrın en çok ihtiyaç duydukları grafik üzerinden stop emri , hareketli stop ,a take profit hareketli take profit emri girebilmeyi yapardım ve bu bir robot olmamalı aracı kurumu robot anlaşması olmayan bir sürü kullanıcı var , grafik üzerinde girmiş oldugum stop ,hareketli stop take profit hareketli take profit emnirlerini grafik üzerinden sürükle bırak yapabilmeliyim

    aynı metatrader deki gibi - stop veya take profit emri girmek , girilen stop veya take profit emirlerinde değişiklik yapmak çok kolay olmalı

    gidiş yolu hakkında yazayım..

    1- bir kaynaktan formasyon hakkında bilgi alın.
    http://www.candlesticker.com/Pattern...r&Pattern=2201
    http://www.candlesticker.com/Pattern...r&Pattern=2101
    gibi.

    2. formülü matematiksel olarak yazın, yada hazırını bulun.

    Bullish Engulfing
    (O1>C1) AND (C-O)>=.7*(H-L) AND (C>O1) AND (O<C1) AND (H-L)>=1.2*(AVGH10-AVGL10)


    Bearish Engulfing
    (C1>O1) AND (O-C)>=.7*(H-L) AND (C<O1) AND (O>C1) AND (H-L)>=1.2*(AVGH10-AVGL10)
    olabilir gibi.

    bunları yazarken yapılan hata genelde farklı formasyonlardan nasıl ayrıldığı olabiliyor.

    bunu da farklı uygulamalarla kıyaslayarak anlayabilir ve geliştirebilirsiniz.

    sistem de ise şu şekilde bir karşılığı olabilir, daha önce sayın cihangir paylaşmıştı..
    sorgu yapacaksanız işiniz kolay, eğer al-sat sistemine dönüştürecekseniz al-sat teyitlerinide formülüze etmeniz gerekecek.
    aşağıdaki kodlar hatalı hesaplıyor olabilir, sadace yöntem hakkında fikir vermek için yazdım.

    var V=Sistem.GrafikVerileri ;
    var C =Sistem.GrafikFiyatOku(V, "Kapanis") ;
    var H =Sistem.GrafikFiyatOku(V, "Yuksek") ;
    var L =Sistem.GrafikFiyatOku(V, "Dusuk") ;
    var O =Sistem.GrafikFiyatOku(V, "Acilis") ;



    for (int i =V.Count-250; i < V.Count; i++)
    {



    if((O[i-1] >C[i-1] && C[i] > O[i] && C[i]>=O[i-1] &&C[i-1]>=O[i] && C[i]-O[i]>O[i-1]-C[i-1]))
    {
    var Yazi ="\nB\nu\nl\nl\ni\ns\nh\n\nE\nn\ng\nu\nl\nf\ni\nn\ n g=" +Sistem.GrafikVerileri[i].Close.ToString();
    Sistem.YaziEkle(Yazi,1, i, Sistem.GrafikVerileri[i].Close, Color.DarkOrange, "Tahoma", 6);
    }


    if((C[i-1] >O[i-1] && O[i]>C[i] && O[i]>=C[i-1] &&O[i-1]>=C[i] && O[i]-C[i]>C[i-1]-O[i-1]))
    {
    var Yazi ="\nB\ne\na\nr\ni\ns\nh\n\nE\ng\nu\nl\nf\ni\nn\ng= " +Sistem.GrafikVerileri[i].Close.ToString();
    Sistem.YaziEkle(Yazi,1, i, Sistem.GrafikVerileri[i].Close, Color.DimGray, "Tahoma", 6);

    }



    }

    Keçiyi yardan uçuran bir tutam ottur..

  2. Dikey yazı için şu şekilde bir kullanımda olabilir.

    PHP Code:
    //ideal içinden kullanım:
    string VerticalTextLib.DikeyYazi("Bullish Engulfing "" C=123" " S=121"  );
    Sistem.YaziEkle(VerticalText1i,Sistem.GrafikVerileri[i].Lowcolor"Tahoma"6); 
      
    //Lib.cs Metodu:
    public string DikeyYazi(string Metin)        
    {            
    string sonuc "";            
    char[] harfler Metin.ToCharArray();            
    for (
    int j 0harfler.Lengthj++)            
    {                
    sonuc += harfler[j] + "\n";            
    }            
    return 
    "\n\n\n" sonuc;        

    Keçiyi yardan uçuran bir tutam ottur..

  3. Merhaba,
    İdeal ekrandaki Hekin Ashi grafiğini bire bir sağalayan koda sahip olan varmı acaba. Elimdeki kodlar grafik ile tam olarak uyumlu değil.

  4.  Alıntı Originally Posted by anonimm Yazıyı Oku
    Merhaba,
    İdeal ekrandaki Hekin Ashi grafiğini bire bir sağalayan koda sahip olan varmı acaba. Elimdeki kodlar grafik ile tam olarak uyumlu değil.
    Sn Anonim, daha önce user.dll e yazmıştım ama deneme şansım olmamıştı. Denedikten sonra buraya yazarsanız memnun olurum. Eğer bir hata varsa düzeltmeye çalışırım.

    Kod:
    /*
     * Average price of the current bar
       xClose = (Open+High+Low+Close)/4 
    
     * Midpoint of the previous bar
       xOpen = [xOpen(Previous Bar) + Close(Previous Bar)]/2
    
     * Highest value in the set
       xHigh = Max(High, xOpen, xClose)
    
     * Lowest value in the set
       xLow = Min(Low, xOpen, xClose)
    */
    public List<cxBar> ToHeikinAshi(List<cxBar> bars)
    {
        var ha = bars.Select(b => b.Clone()).ToList();
    
        try
        {
            for (int i = 1; i < bars.Count; i++)
            {
                ha[i].Close = (bars[i].Open + bars[i].High + bars[i].Low + bars[i].Close) / 4;
                ha[i].Open = (ha[i - 1].Open + ha[i - 1].Close) / 2;
                ha[i].High = Max(bars[i].High, ha[i].Open, ha[i].Close);
                ha[i].Low = Min(bars[i].Low, ha[i].Open, ha[i].Close);
            }
        }
        catch (Exception ex)
        {
            //Log(string.Format("ToHeikinAshi failed. Ex: {0}", ex));
        }
    
        return ha;
    }

  5. #605
    Duhul
    Feb 2017
    İkamet
    Eskişehir / Duhul 2007
    Yaş
    53
    Gönderi
    4,677
    Teşekkür ederim

    Lib.Cs kullanımını bilmediğimden elimdekini değiştirebilmem imkansız.

     Alıntı Originally Posted by Keçi Yazıyı Oku
    DialogBox lar yanıt alana kadar tüm sistemi durdururlar hocam.
    Ama bunun aslında basit bir çözümü var
    DialogBoxları asenkron açmak..
    dialog yine anlık çıksın, soru sorulduktan sonra işleyiş kesilmeden devam etsin.
    fakat emir işlemleri için işleyişden bağımsız bir timer yapın robot içinde.
    3 saniyede bir sorulan soruya cevabı alınıp işlenmemiş bir emir varmı diye kontrol edip, varsa emirleri giren...

    if (Sistem.ZamanKontrolSaniye("EmirIslemleri") >= 3)
    {
    //dosyadan yanıtları okuyan ve gerekeni yapan kodlar...
    }

    gibi..

    PHP Code:
    //Lib.cs Using:

    using System.Threading.Tasks;
    using System.Windows.Forms;

    //Libc.cs Method:

        
    public void AsycBox(string Messagestring Title)
            {   
                
    Task.Run(() =>
                        {                    
                        var 
    dialogResult=  MessageBox.Show(MessageTitleMessageBoxButtons.OKCancel);
                            if (
    dialogResult == System.Windows.Forms.DialogResult.OK)
                                
    MessageBox.Show("OK tıklandı"); //Buraya dosyaya alınan yanıtı yazan birşeyler...
                            
    else
                                
    MessageBox.Show("iptal tıklandı");//Buraya dosyaya alınan yanıtı yazan birşeyler...
                        
    });           
            }

    //ideal Sistem içinden kullanım örneği:

    Lib.AsycBox("islem yapılsınmı","dikkat"); 
    Bear_Bull
    @BearBull26

  6.  Alıntı Originally Posted by Bear_Bull Yazıyı Oku
    Teşekkür ederim

    Lib.Cs kullanımını bilmediğimden elimdekini değiştirebilmem imkansız.
    Lib.Cs sorun değil aslında. Aşağıdaki gibi lib.cs siz de yapılabilir.
    Asıl iş emir gönderme yapısında ciddi değişiklik gerekiyor bu yapıya geçmeniz için.


    using sorun olur diye lib.cs ye eklemiştim ama kullanım içerisine yedirdim onuda.

    --------------------------------------------------------------
    İdeal içerisinden asenkron görev başlatma örneğidir:
    --------------------------------------------------------------

    Kod:
    if (Sistem.ZamanKontrolSaniye("Test") >= 10)
    {
    Sistem.ZamanKontrolGuncelle("Test");
    
    
    System.Threading.Tasks.Task.Run(() => 
    { 
    string sonuc=""; 
    var dialogResult= MessageBox.Show("icerik", "baslik", MessageBoxButtons.OKCancel);
    
        if (dialogResult == System.Windows.Forms.DialogResult.OK) 
    {
            sonuc="OK"; 
    //Dosyaya yapılacak emiri yaz.
    }
    else sonuc="İptal";
    }); 
    }
    
    
    
    
    if (Sistem.ZamanKontrolSaniye("EmirIslemleri") >= 3)
    {
    Sistem.ZamanKontrolGuncelle("EmirIslemleri");
    //Dosyada işaretsiz emirleri bul, listeye at, işaretle.
    //listedeki emirleri gönder
    }
    Keçiyi yardan uçuran bir tutam ottur..

  7. Lib.cs Kullanımı

    Lib.cs Tüm ideal sistemleri içerisinden erişebileceğiniz bir kütüphanedir.

    İdeal kurulum dizini altında; C:\iDeal\Lib.cs dosyasını notepad benzeri bir uygulama açıyorsunuz.
    içerisinde kalıp yapı zaten mevcut aşağıdaki gibi.


    Kod:
    using System;
    using System.IO;
    using System.Collections.Generic;
    using System.Data;
    using System.Net;
    using System.Text;
    
    namespace ideal
    {
    public class Lib
    {
    
        public int topla( int a , int b)
       { 
         return a+b; 
        }
    
    }
    }

    topla adında bir metod var burada örneğin.
    benzer şekilde dilediğiniz kadar metod ekleyebiliyorsunuz..

    1-lib.cs dosyasında düzenleme yapıp kodları yazıyorsunuz.
    2-ideal de "S" menüsü altında Lib.cs dosyasını compile et diyorsunuz.Hata alıyorsanız düzenleyip yeniden.
    3- ideal sistemleri içerisinde şu şekilde kullanıyorsunuz.

    int sonuc = Lib.topla(2,2);


    Dipnot:
    Lib.cs kullanımında en önemli noktalardan birisi sistemi ve verileri lib e gönderip orada işlemler yapıp çıktıyı geri almaktır.
    sn Tiberius un geçmişte bununla ilgili örnekleri var eski forumda.
    http://www.hisse.net/forum/archive/i...2740-p-19.html
    sayfasında "halka hizmet hakka hizmet" cümlesini aratarak görebilirsiniz.
    Keçiyi yardan uçuran bir tutam ottur..


  8. var V = Sistem.GrafikVerileri ;
    // hesapla
    var PD = Sistem.BilancoPD();
    var NK = Sistem.BilancoNetKar();
    var x3 = Sistem.Liste(V.Count, 0);
    var x2 = Sistem.MA(x3, "Simple", 10);

    for (int i = 1; i < V.Count; i++)
    x3[i] = (NK[i]/PD[i]);


    var x1 = Sistem.Liste(V.Count, 0);

    for (int i = 1; i < V.Count; i++)
    x1[i] = x3[i] > x2[i] ? 1 : x3[i] < x2[i]? -1 : x1[i-1] ;


    // sistem
    var SonYon = "";

    for (int i = 1; i<V.Count; i++)
    {


    if ( x1[i] == 1 && SonYon != "A" ) // AL
    {
    Sistem.Yon[i] = "A";
    SonYon = Sistem.Yon[i];

    }



    else if ( x1[i] == -1 && SonYon != "S" ) // SAT
    {
    Sistem.Yon[i] = "S";
    SonYon = Sistem.Yon[i];

    }



    else if ( x1[i] == 0 && (SonYon == "A" || SonYon == "S") ) // FLAT
    {
    Sistem.Yon[i] = "F";
    SonYon = Sistem.Yon[i];

    }


    }
    Sistem.Cizgiler[0].Deger = x3; // panel2
    Sistem.Cizgiler[1].Deger = x2;
    bu kodda x2 çizgisi 0 olarak görünmsinin sebebi ney nasıl düzelteceğim.
    Senin almaya cesaret edemediğin riskleri alanlar, senin yaşamak istediğin hayatı yaşarlar..
    Sokrates twit @erhanacikgoz1

Sayfa 76/596 İlkİlk ... 2666747576777886126176576 ... SonSon

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
  •