Sayfa 398/593 İlkİlk ... 298348388396397398399400408448498 ... SonSon
Arama sonucu : 4738 madde; 3,177 - 3,184 arası.

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

  1.  Alıntı Originally Posted by serseri26 Yazıyı Oku
    bilgisayara sanal windows kurarsanız iki idealide aynı anda çalıştırabilirsiniz.Tabi lisansınız varsa.
    [IMG][/IMG]

    ideal teknik servisini arayarak öğrendim.

    Aşamaları yazıyorum.

    1- Mevcut bir ideal varsa , yeni bir ideal daha kuruyoruz. Yeni kurdugumuz idealin adı 1. idealden farklı olacak.
    2. Mevcut olan idealin içinde confiğ klasörünün içine mausa sağ tıklayarak yeni metin belgesi şeciyoruz bunada multiuser ismini veriyoruz.
    3. Yaptıgımız multiuser dosyasını yeni kurduğumuz idealin config dosyasının içine kopyalıyoruz.
    4- Mevcut idealde yer alan patern, chart sistem, chardata gibi klasörleri yeni idealin içine kopyalıyoruz. (Bu mecburi olmayıp hangi ayarları taşımak istiyorsanız onu kopyalarsınız.
    5- 2 idealide artık aynı anda açabilirsiniz artık .
    6- Bu işlemleri yaparken idealler kapalı olarak yapılacak.

    Ben bunu idealgo modülünde aynı anda 1 den fazla optimizasyon yapmak için kullanacagım.
    Lisans bilgilerinizi yeni kurdugunuz idealin içine yazdınızmı idealgo modülü ondada açılacaktır.

  2. Sistem.SorguBaslik[0] = "Hacim";
    Sistem.SorguBaslik[1] = "besGunHacim";

    var veri = Sistem.GrafikVerileri;
    var V = Sistem.GrafikFiyatOku(veri, "Hacim");
    var bes = Sistem.MA(5, "Simple", "V"); //son 5 periyot hacim ortalaması

    Sistem.SorguDeger[0] = Sistem.GrafikVerileri[Sistem.BarSayisi-1].Vol;
    Sistem.SorguDeger[1] = bes ;

    Sistem.SorguEkle();

    Üsteki sorgu formülünde günün hacmini ve 5 günlük hacim ortalamasını tabloda görmek istiyorum . Günlük hacmi hesaplıyor fakat 5 günlük hacim ortalamasını hesaplamıyor.

    5 günlük hacim ortalamasını nasıl yazmalıyım ki oda tabloda görünsün.

  3.  Alıntı Originally Posted by atakanözbaki Yazıyı Oku
    Sistem.SorguBaslik[0] = "Hacim";
    Sistem.SorguBaslik[1] = "besGunHacim";

    var veri = Sistem.GrafikVerileri;
    var V = Sistem.GrafikFiyatOku(veri, "Hacim");
    var bes = Sistem.MA(5, "Simple", "V"); //son 5 periyot hacim ortalaması

    Sistem.SorguDeger[0] = Sistem.GrafikVerileri[Sistem.BarSayisi-1].Vol;
    Sistem.SorguDeger[1] = bes ;

    Sistem.SorguEkle();

    Üsteki sorgu formülünde günün hacmini ve 5 günlük hacim ortalamasını tabloda görmek istiyorum . Günlük hacmi hesaplıyor fakat 5 günlük hacim ortalamasını hesaplamıyor.

    5 günlük hacim ortalamasını nasıl yazmalıyım ki oda tabloda görünsün.

    kendim biraz daha uğraşarak yaptım
    Haftalık Hacim ortalaması/ 3 aylık hacim ortalaması
    Aylık hacim ortalaması / yıllık hacim ortalaması

    //akşam sorgulama yaptığınızda, 120dk lık altı periyotlar 18:00 ve 18.10 kapanışlarını sorgulayacağından genelde sağlıklı çalışmaz


    Sistem.SorguBaslik[0] = "Son Hacim";
    Sistem.SorguBaslik[1] = "Hafta O.H";
    Sistem.SorguBaslik[2] = "UcAy O.H";
    Sistem.SorguBaslik[3] = "Ay O.H";
    Sistem.SorguBaslik[4] = "Yıllık O.H";
    Sistem.SorguBaslik[5] = "Hafta/UcAy %";
    Sistem.SorguBaslik[6] = "Ay/Yıllık %";


    var Hafta = Sistem.MA(5, "Simple", "Hacim"); //son 5 periyot hacim ortalaması
    var UcAy = Sistem.MA(90, "Simple", "Hacim"); //son 90 periyot hacim ortalaması
    var Ay = Sistem.MA(30, "Simple", "Hacim"); //son 30 periyot hacim ortalaması
    var Yıl = Sistem.MA(360, "Simple", "Hacim"); //son 360 periyot hacim ortalaması


    var Veriler = Sistem.GrafikVerileri;
    var C = Sistem.GrafikFiyatOku(Veriler, "Kapanis");
    var V = Sistem.GrafikFiyatOku(Veriler, "Hacim");
    var j=Sistem.BarSayisi-1;


    Sistem.SorguDeger[0] = V[j];
    Sistem.SorguDeger[1] = Hafta[j];
    Sistem.SorguDeger[2] = UcAy[j];
    Sistem.SorguDeger[3] = Ay[j];
    Sistem.SorguDeger[4] = Yıl[j];
    Sistem.SorguDeger[5] = ((Hafta[j]-UcAy[j])/UcAy[j])*100 ;
    Sistem.SorguDeger[6] = ((Ay[j]-Yıl[j])/Yıl[j])*100 ;


    Sistem.SorguEkle();

  4. // YENİ TEK YÖNLÜ İŞLEM AÇAN ROBOT FORMÜLÜ . TEK YÖNLÜ İŞLEM AÇABİLMESİ İÇİN SİSTEMİN TEK YÖNLÜ OLARAK YAZILMASI GEREKİR.
    //TEK YÖN SİSTEM ÖRNEĞİ TOMAHISSE SİSTEMİ YAZILMIŞTIR.

    var LotSize = 1; //işlem adedi
    var SistemAdi = "TOMAHISSE"; //sistemizin adı (ÖRNEK TEK YÖNLÜ TOMAHISSE SİSTEMİ SİSTEM ADI OLARAK GİRİLMİŞTİR)
    var GrafikSembolu = "IMKBH'THYAO"; //sistemin sinyal ürettiği grafik sembolü
    var GrafikPeriyodu = "1"; //grafiğin periyodu
    var EmirSembol = "IMKBH'THYAO"; //HİSSE KODU İLE AYNI YAZILMALI


    var MySistem = Sistem.SistemGetir(SistemAdi, GrafikSembolu , GrafikPeriyodu ); //sistemin adı, grafik sembolü, grafiğin periyodu
    if (MySistem == null)
    {
    Sistem.Mesaj(Sistem.Name + "Hatalı Çalışıyor !");
    }
    else
    {
    var SonFiyat = Sistem.SonFiyat(EmirSembol);
    var Anahtar = Sistem.Name + "," + EmirSembol;
    double IslemFiyat = 0;
    DateTime IslemTarih;
    var Miktar = 0.0;
    var Rezerv = "";
    var Pozisyon = Sistem.PozisyonKontrolOku(Anahtar, out IslemFiyat, out IslemTarih);

    var SonYon = Sistem.SonYonGetir(SistemAdi, GrafikSembolu , GrafikPeriyodu ); //sistemin adı, grafik sembolü, grafiğin periyodu
    if (Sistem.Saat.CompareTo("09:30:00") <= 0 || Sistem.Saat.CompareTo("18:14:59") >= 0) // seans yok işlem yapma
    {
    }
    else
    {
    if (SonYon == "F" && Pozisyon != 0) // Flata Geç
    Miktar = -Pozisyon;
    else if (SonYon == "A" && Pozisyon != LotSize) // Al
    Miktar = LotSize - Pozisyon;
    else if (SonYon == "S" && Pozisyon != -LotSize) // Sat
    Miktar = -LotSize - Pozisyon;
    // Emir Gönder
    var Islem = "";
    if (Miktar > 0) {Islem = "ALIS"; Rezerv = "ALIŞ YAPILDI";}
    if (Miktar < 0) {Islem = "SATIS"; Rezerv = "SATIŞ YAPILDI";}
    if (Islem != "")
    {

    Sistem.PozisyonKontrolGuncelle(Anahtar, Miktar + Pozisyon, SonFiyat, Rezerv);
    Sistem.EmirSembol = EmirSembol ;
    Sistem.EmirIslem = Islem;
    Sistem.EmirSuresi = "KIE"; // GUN, KIE, IKG
    Sistem.EmirTipi = "Piyasa"; // Piyasa, Limitli, Piyasadan Limite
    Sistem.EmirMiktari = Math.Abs(Miktar);
    Sistem.EmirGonder();
    }
    }
    }

    ******************************************
    Bu robotu piyasa fiyatından değilde Aktif fiyattan emir göndermesi için hangi değişiklikleri yapmam gerekiyor.

  5. #3181
    @atakanözbaki
    tam bilmememkle beraber aklımda şöyle kalmış ;

    var AktifFiyat=yuzeysel.AskPrice
    Sistem.EmirFiyati=AktifFiyat

  6. #3182
    İyiakşamlar, günaydın

    yapmakistediğim şu.
    İndikatör, -500 /0/500 değerlerinden oluşuyor.
    Birbirini takip eden değerlerharicinde birliste oluşturup
    al koşulu: a9[i-1] 0 ve a9[i] 100ise alsın şeklinde.
    yardımcıolurmusunuz

    A9.jpgA9.jpg

  7.  Alıntı Originally Posted by atakanözbaki Yazıyı Oku
    // YENİ TEK YÖNLÜ İŞLEM AÇAN ROBOT FORMÜLÜ . TEK YÖNLÜ İŞLEM AÇABİLMESİ İÇİN SİSTEMİN TEK YÖNLÜ OLARAK YAZILMASI GEREKİR.
    //TEK YÖN SİSTEM ÖRNEĞİ TOMAHISSE SİSTEMİ YAZILMIŞTIR.

    var LotSize = 1; //işlem adedi
    var SistemAdi = "TOMAHISSE"; //sistemizin adı (ÖRNEK TEK YÖNLÜ TOMAHISSE SİSTEMİ SİSTEM ADI OLARAK GİRİLMİŞTİR)
    var GrafikSembolu = "IMKBH'THYAO"; //sistemin sinyal ürettiği grafik sembolü
    var GrafikPeriyodu = "1"; //grafiğin periyodu
    var EmirSembol = "IMKBH'THYAO"; //HİSSE KODU İLE AYNI YAZILMALI


    var MySistem = Sistem.SistemGetir(SistemAdi, GrafikSembolu , GrafikPeriyodu ); //sistemin adı, grafik sembolü, grafiğin periyodu
    if (MySistem == null)
    {
    Sistem.Mesaj(Sistem.Name + "Hatalı Çalışıyor !");
    }
    else
    {
    var SonFiyat = Sistem.SonFiyat(EmirSembol);
    var Anahtar = Sistem.Name + "," + EmirSembol;
    double IslemFiyat = 0;
    DateTime IslemTarih;
    var Miktar = 0.0;
    var Rezerv = "";
    var Pozisyon = Sistem.PozisyonKontrolOku(Anahtar, out IslemFiyat, out IslemTarih);

    var SonYon = Sistem.SonYonGetir(SistemAdi, GrafikSembolu , GrafikPeriyodu ); //sistemin adı, grafik sembolü, grafiğin periyodu
    if (Sistem.Saat.CompareTo("09:30:00") <= 0 || Sistem.Saat.CompareTo("18:14:59") >= 0) // seans yok işlem yapma
    {
    }
    else
    {
    if (SonYon == "F" && Pozisyon != 0) // Flata Geç
    Miktar = -Pozisyon;
    else if (SonYon == "A" && Pozisyon != LotSize) // Al
    Miktar = LotSize - Pozisyon;
    else if (SonYon == "S" && Pozisyon != -LotSize) // Sat
    Miktar = -LotSize - Pozisyon;
    // Emir Gönder
    var Islem = "";
    if (Miktar > 0) {Islem = "ALIS"; Rezerv = "ALIŞ YAPILDI";}
    if (Miktar < 0) {Islem = "SATIS"; Rezerv = "SATIŞ YAPILDI";}
    if (Islem != "")
    {

    Sistem.PozisyonKontrolGuncelle(Anahtar, Miktar + Pozisyon, SonFiyat, Rezerv);
    Sistem.EmirSembol = EmirSembol ;
    Sistem.EmirIslem = Islem;
    Sistem.EmirSuresi = "KIE"; // GUN, KIE, IKG
    Sistem.EmirTipi = "Piyasa"; // Piyasa, Limitli, Piyasadan Limite
    Sistem.EmirMiktari = Math.Abs(Miktar);
    Sistem.EmirGonder();
    }
    }
    }

    ******************************************
    Bu robotu piyasa fiyatından değilde Aktif fiyattan emir göndermesi için hangi değişiklikleri yapmam gerekiyor.

    Arkadaşlar hisse senedinde kullanılmak üzere robota ihtiyacım var. Forumda olan robotların tamamı neredeyse piyasa fiyatlı emir gönderiyor. Benim aktif fiyatlı emir gönderecek bir robot gerekiyor sebebinide yazayım.

    Portföy : 50,000 tl
    Hisse satış fiyatı 10.05
    Alınabilir Hisse adedi 4975 lot
    Robota alacagı lot : 4500
    Sinyal gelince sonuç: Portföyünüzdeki miktar yetersizdir.
    Nedeni : Robot piyasa fiyatlı emir gönderdigi için maliyeti hissenin tavan fiyatından hesaplamaktadır. O yüzden böyle bir uyarı vermektedir. Aracı kurumundan kaynaklanan bir sebebtir.
    İstediğim şudur: Hisse alırken son fiyata göre hesaplama yapsın . Fakat yine piyasa emri gibi kesin gerçekleşecek bir emiir türü olsun. Satarken yine piyasa fiyatıyla satabilsin.

    Çözüm olarak şunu düşündüm: Alış yaparken son fiyat+5 gibi üst kademelere emri göndersin bu şekilde de o andaki en iyi piyasadaki fiyattan emir gerçekleşir diye düşünüyorum.

    Sezai beye mail attım talebimi ilettim. O da limit emir şeklinde gönderebilirsin , aktif fiyat diye bir şey yok dedi. Halbuki biz matrikste robotu kurarken Aktif , Aktif +1 , Aktif +2 gibi emir türlerini seçerek kurardık. İdealde bu formülle yapılabilir diye düşünüyorum.

    Forumdaki nerdeyse bütün robotları denedim, sanal emir gönderdim hiç birisi gerçekleşmedi. Nerede hata oldugunuda bir türlü bulamadım. Bir tanesi gerçekleşti oda döngüye girdi. 3 adet emir gönderim korumasıyla robotu durdurdu .

    Sayın netkit dediginiz şeyide yapmaya çalıştım fakat beceremedim.

  8. https://www.borsaistanbul.com/urunle...i/emir-tipleri

    https://idealdata.com.tr/parametreler-fonksiyonu/

    Sistem.EmirFiyatTipi = "PYS"; // PYS, LMT, EIF, KAP
    Sistem.EmirFiyati = "Aktif"; // aktif fiyat

    Fiyat Tipi LMT yapıp EmirFiyati Aktif yaptığınızda olması gerekir.

Sayfa 398/593 İlkİlk ... 298348388396397398399400408448498 ... 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
  •