Sayfa 947/1154 İlkİlk ... 4478478979379459469479489499579971047 ... SonSon
Arama sonucu : 9231 madde; 7,569 - 7,576 arası.

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

  1. Esas

    Teşekkürler Bear_Bull

     Alıntı Originally Posted by Bear_Bull Yazıyı Oku
    movlarla hesaplamanızı yapmışsınız IND oluşmuş
    al-sat için IND kullanacaksınız.

    IND[i] > 0 {al}
    IND[i] < 0 { sat}

  2. #7570
    Duhul
    Dec 2010
    İkamet
    İstanbul
    Gönderi
    214

    Esas

    Sezai bey,klasik robot emirlerinde bar kapanış fiyatına göre kapanış fiyatından limitli emir gönderebilirmiyiz?Boyle bir özelik varsa örnek paylaşabilirmisiniz?Teşekkür ederim.

  3. Esas

     Alıntı Originally Posted by karmatte Yazıyı Oku
    Sezai bey,klasik robot emirlerinde bar kapanış fiyatına göre kapanış fiyatından limitli emir gönderebilirmiyiz?Boyle bir özelik varsa örnek paylaşabilirmisiniz?Teşekkür ederim.
    Aslında sadece iki satırda değişiklik oluyor.
    Bu satırda PYS yerine LMT yazmak
    Sistem.EmirFiyatTipi = "LMT"; // PYS, LMT, EIF, KAP

    ve
    Emre bir de fiyat bilgisi atamak
    Sistem.EmirFiyati = C[V.Count-2];

    ÖNEMLİ NOT: LİMİTLİ EMİR GÖNDERDİĞİNİZDE, ROBOT POZİSYONU İŞLEM YÖNÜNE GÖRE BELİRLER VE DEĞİŞTİRİR.YANİ İŞLEM GERÇEKLEŞMİŞ GİBİ HAREKET EDER.. EMRİN GERÇEKLEŞMEMESİ DURUMUNU ROBOT BİLEMEZ.

    Kod:
    var LotSize = 1.0;
    var Sembol = "VIP'F_XU0300216S0";
    var Periyot = "5";
    var V = Sistem.GrafikVerileriniOku(Sembol, Periyot);
    var C = Sistem.GrafikFiyatOku(V, "Kapanis");
    var Mov = Sistem.MA(C, "Exp", 50);
    
    // tara
    var SartAl = false;
    var SartSat = false;
    
    var SonYon = ""; 
    for (int i = 1 ; i < V.Count; i++)
    {
       if (C[i] > Mov[i] && SonYon != "A" ) // alış
       {
          SonYon = "A";
          if (i == V.Count - 2) SartAl = true;
       } 
       if (C[i] < Mov[i]  && SonYon != "S") // satış
       {
          SonYon = "S";
          if (i == V.Count - 2) SartSat = true;
       }
    }
    
    // emir gönder
    var Islem = "";
    var Miktar = 0.0;
    var Pozisyon = Sistem.PozisyonKontrolOku(Sistem.Name + " , " + Sembol);
    
       if (SartAl && Pozisyon <= 0) // alış
       {
          Islem = "ALIS";
          if (Pozisyon == 0) // pozisyonum yoksa 1 lot al
             Miktar = LotSize;
          else if (Pozisyon < 0) // short isem stop and reverse , 2 lot al
             Miktar = LotSize + Math.Abs(Pozisyon);
       }
       else if (SartSat && Pozisyon >= 0) // satış
       {
          Islem = "SATIS";
          if (Pozisyon == 0) // pozisyonum yoksa 1 lot sat
             Miktar = LotSize;
          else if (Pozisyon > 0) // long isem stop and reverse , 2 lot sat
             Miktar = LotSize + Math.Abs(Pozisyon);
       }
    
    
    // Emir Gönder !!!
    if (Islem != "")
    {
       if (Islem == "ALIS")
          Sistem.PozisyonKontrolGuncelle(Sistem.Name + " , " + Sembol, LotSize);
       else if (Islem == "SATIS")
          Sistem.PozisyonKontrolGuncelle(Sistem.Name + " , " + Sembol, -LotSize);
    
       Sistem.EmirSembol = Sembol;
       Sistem.EmirIslem = Islem; 
       Sistem.EmirMiktari = Miktar;
       Sistem.EmirSuresi = "GUN"; // GUN, SNS, IKG
       Sistem.EmirTipi = "KPY"; // KPY, KIE, GIE, SAR
       Sistem.EmirFiyatTipi = "LMT"; // PYS, LMT, EIF, KAP
       Sistem.EmirFiyati = C[V.Count-2];
       Sistem.EmirGonder();
    
    Sinyalin oluştuğu (kapanmış barın) close değerimi emir fiyatı olarak atadım
    
    
    
    
    }

  4. #7572
    Duhul
    Dec 2011
    İkamet
    İstanbul
    Gönderi
    83

    Esas

     Alıntı Originally Posted by karmatte Yazıyı Oku
    Sezai bey,klasik robot emirlerinde bar kapanış fiyatına göre kapanış fiyatından limitli emir gönderebilirmiyiz?Boyle bir özelik varsa örnek paylaşabilirmisiniz?Teşekkür ederim.
    Birkaç defa işlemi yapar ama hızlı harekette kaçırırsınız....naçizane görüşüm...karar sizin tabii ki.

  5. Esas

    birim barlara dün robot bagladım. daha dogrusu sıstem baglayıp

    tek robot koduyla işlem yapmak ıstedım.

    sistemi şu ankı vadede calıstırdım.

    ancak birim barda veri gelirken sistem sınyallerı kaybolup geri geliyor 1 dakıka içinde hemen hemen 30 kere falan.

    bagladık tek satırlık robotta bır hata yapmadıgımı sanıyorum ancak robot hiç işlem acmadı.

    sorum şu:

    1-sinyallerın kaybolup gerı gelmesı sorun oluşturur mu ? oluşturuyorsa nasıl çözeriz çözülemez mi ?

    2-tek satırlık robot kodu ile şu anki vade koduyla calısan bu robotu baglayamıyormuyuz yoksa sıstem sınyallerı kaybolup geri geldi diye mi robot işlem yapmadı.

  6. Esas

     Alıntı Originally Posted by erhanacikgoz1 Yazıyı Oku
    sorum şu:
    1-sinyallerın kaybolup gerı gelmesı sorun oluşturur mu ? oluşturuyorsa nasıl çözeriz çözülemez mi ?
    2-tek satırlık robot kodu ile şu anki vade koduyla calısan bu robotu baglayamıyormuyuz yoksa sıstem sınyallerı kaybolup geri geldi diye mi robot işlem yapmadı.
    Birim kodda robot denemeleri daha önce yaptım sorunsuz, ama tek satırlık robot fonksiyonu ile kullanmamıştım hiç

    Tek satırlık robot kodu, viop seans saatleri dışında emir göndermeye engelli olduğu için yarın bir deneme yaparım ben de.

    Sistemi uyguladığınız sistemin baz sembolü yakın vade kodu değil, F_XU030AAYYS0 şeklinde olan kod olması gerekiyor. Kaybolup geri gelme dediğinize göre stratejiyi vip-x030 koduna uygulattınız diye düşünüyorum.

  7. Esas

     Alıntı Originally Posted by Sezai KILIÇ Yazıyı Oku
    Birim kodda robot denemeleri daha önce yaptım sorunsuz, ama tek satırlık robot fonksiyonu ile kullanmamıştım hiç

    Tek satırlık robot kodu, viop seans saatleri dışında emir göndermeye engelli olduğu için yarın bir deneme yaparım ben de.

    Sistemi uyguladığınız sistemin baz sembolü yakın vade kodu değil, F_XU030AAYYS0 şeklinde olan kod olması gerekiyor. Kaybolup geri gelme dediğinize göre stratejiyi vip-x030 koduna uygulattınız diye düşünüyorum.
    robot kodu şu sezai bey.

    sistemide grafik olarak F_XU0300216S0 da calıstırmıstım. Yarın F_XU030AAYYS0 göre düzenleyip deneyeyim olmazsa

    var c = Sistem.SonFiyat(Sistem.AktifViopKontrat);
    var fiyat = c;

    fiyat= Sistem.SayiYuvarla(fiyat, 0.025);

    var Islem =Sistem.RobotViopAktif("tomapuan", "VIP'F_XU0300216S0", "erhan","B", 1);// periyot, adet ,

    if (Islem != "")

    { if (Islem != " ")

    Sistem.MailServerAdres = "smtp.gmail.com";
    Sistem.MailServerPort = 587;
    Sistem.MailKonu = "Robot Bildilendirme";
    Sistem.MailMetin = "Islem = " + Islem + " " +"Fiyat = " + fiyat + " " + "TOMA PUAN ROBOTU" ;

    Sistem.MailGonderenAdres = "*****";
    Sistem.MailGonderenSifre = "******";
    Sistem.MailAliciEkle("*****@gmail.com");
    Sistem.MailAliciEkle("******@yahoo.com");

    Sistem.MailGonder();


    }

  8. #7576

    Esas

    Arkadaşlar sizde de şu an aynı sorun mevcut mu ? Şu anda varant kotasyonu derinlik ekranında gözükmesine rağmen kod içinde hem alış hemde satış kotasyonlarını okumuyor. Eğer Sezai Bey forumda ise , refresh bilgisinin terminallere yansıtılıp yansıtılmadığı hakkında bilgi verebilirse sevinirim.



    Düzeltme : Gün içinde oluşmadı , kapanış sonrası için bu sorun mevcut.
    Son düzenleme : Afgan; 17-02-2016 saat: 22:54.

Sayfa 947/1154 İlkİlk ... 4478478979379459469479489499579971047 ... SonSon

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
  •