Teşekkür ederim hocam
|
|
dax-a HARİÇ DATA GELMEYE BAŞLADI.
Eskiden kalma MS-Dos bilgisiyle ben Eski dataları Yenisine yüklettim sizde yapmak isterseniz
İdeal.Bat diye bir dosya oluşturun (ideal kapalı olursa daha iyi olur ben açıkken yaptım)
@ECHO OFF
RD %1 /S /Q
COPY C:\iDeal\ChartData\FUTGCK\01\FUTGCK'FDAX.01 C:\iDeal\ChartData\DFN\01\DFN'DAX-A.*
COPY C:\iDeal\ChartData\FUTGCK\05\FUTGCK'FDAX.05 C:\iDeal\ChartData\DFN\05\DFN'DAX-A.*
COPY C:\iDeal\ChartData\FUTGCK\60\FUTGCK'FDAX.60 C:\iDeal\ChartData\DFN\60\DFN'DAX-A.*
COPY C:\iDeal\ChartData\FUTGCK\G\FUTGCK'FDAX.G C:\iDeal\ChartData\DFN\G\DFN'DAX-A.*
COPY C:\iDeal\ChartData\FUTGCK\01\FUTGCK'FDJMIN.01 C:\iDeal\ChartData\DFN\01\DFN'DJ30-A.*
COPY C:\iDeal\ChartData\FUTGCK\05\FUTGCK'FDJMIN.05 C:\iDeal\ChartData\DFN\05\DFN'DJ30-A.*
COPY C:\iDeal\ChartData\FUTGCK\60\FUTGCK'FDJMIN.60 C:\iDeal\ChartData\DFN\60\DFN'DJ30-A.*
COPY C:\iDeal\ChartData\FUTGCK\G\FUTGCK'FDJMIN.G C:\iDeal\ChartData\DFN\G\DFN'DJ30-A.*
COPY C:\iDeal\ChartData\DJI\01\DJI'DJI.01 C:\iDeal\ChartData\DFN\01\DFN'US30.*
COPY C:\iDeal\ChartData\DJI\05\DJI'DJI.05 C:\iDeal\ChartData\DFN\05\DFN'US30.*
COPY C:\iDeal\ChartData\DJI\60\DJI'DJI.60 C:\iDeal\ChartData\DFN\60\DFN'US30.*
COPY C:\iDeal\ChartData\DJI\G\DJI'DJI.G C:\iDeal\ChartData\DFN\G\DFN'US30.*
COPY C:\iDeal\ChartData\FUTGCK\01\FUTGCK'SP1.01 C:\iDeal\ChartData\DFN\01\DFN'SP500-A.*
COPY C:\iDeal\ChartData\FUTGCK\05\FUTGCK'SP1.05 C:\iDeal\ChartData\DFN\05\DFN'SP500-A.*
COPY C:\iDeal\ChartData\FUTGCK\60\FUTGCK'SP1.60 C:\iDeal\ChartData\DFN\60\DFN'SP500-A.*
COPY C:\iDeal\ChartData\FUTGCK\G\FUTGCK'SP1.G C:\iDeal\ChartData\DFN\G\DFN'SP500-A.*
içine yazılı komutları kopyalayıp yapıştırn, Kaydedin ve sonra aynı dosyayı çalıştırın
yeni kodlara eski datalar kopyalanmıştır.
ideal.bat dosyasını bir sakatlık yapıp 1-2 ay /sene sonra yanlışlıkla çalıştırmamak için silin.
kolay gelsin.
Bear_Bull
@BearBull26
Teşekkür ederim hocam
Bunu ideale çevirebilirmiyiz acaba ??
Matriks formülü aşağıdaki gibidir.
A:=MACD(26,12,9)-MACDTrigger(26,12,9);
B:=mov(A,9,e);
A;B;0
aşağıdakimidir isteğiniz.
var Param1 = Sistem.Parametreler[0];//26
var Param2 = Sistem.Parametreler[1];//12
var Param3 = Sistem.Parametreler[2];//9
// hesapla
var MACD = Sistem.MACD (Param1, Param2);
// ortalama
var AVR = Sistem.MA(MACD, "Exp", Param3 );
var MCDAS = Sistem.MA(MACD, "Exp",9);
//(MACD()-Mov(MACD(),9,E));
//Mov((MACD()-Mov(MACD(),9,E)),9,E);0
// hesaplanan verileri çizgilere aktar ve açıklama ekle
Sistem.Cizgiler[0].Deger = MACD; //PANEL 2
Sistem.Cizgiler[0].Aciklama = "MACD";
Sistem.Cizgiler[1].Deger = AVR; //PANEL 2
Sistem.Cizgiler[1].Aciklama = "AVR";
Sistem.Cizgiler[2].Deger = MCDAS; //PANEL 3 STİL 5
Bear_Bull
@BearBull26
Merhaba,
Bisthesapoku() metoduyla gerçekleşen emirleri nasıl listeleyebiliriz.
VİOP için olan örneğini vereyim Hisse için olanı maalesef bende yok.
PHP Code:
if ( Sistem.ZamanKontrolDakika("bakiyeoku") >= 1) // 1 dakikada 1 kez kontrol eder.
{ // ZamanKontrolDakika
Sistem.ZamanKontrolGuncelle("bakiyeoku");
var ViopHesap = Sistem.ViopHesapOku();
if (ViopHesap != null)
{ // hesap Kontrol
var Renk = Color.Black;
// Pozisyonlar
var PozListP = ViopHesap.Pozisyonlar;
// Tabloya Yazdır
string Tbl_Vip_Poz = "VIOP POZISYONLAR";
var SG1 = new int[2]{170,50};
var SH1 = new int[2]{0,1};
var SB1 = new string[2]{"Sembol","Poz"};
Sistem.Tablo(Tbl_Vip_Poz, 200, 100, 260, 200, 2, 25, SG1, SH1, SB1);
Sistem.TabloTemizle(Tbl_Vip_Poz);
for (int i = 0; i < PozListP.Count; i++)
{
Renk = Color.Black;
if (PozListP[i].NetAmount > 0)
Renk = Color.Blue;
else if (PozListP[i].NetAmount < 0)
Renk = Color.Red;
Sistem.TabloYazdir(Tbl_Vip_Poz, 0, i, PozListP[i].Symbol, Color.White, Renk);
Sistem.TabloYazdir(Tbl_Vip_Poz, 1, i, PozListP[i].NetAmount.ToString("0"), Color.White, Renk);
}
///////////////////////
// Teminat
string Tbl_Vip_Tmnt = "VIOP TEMINAT";
var SG2= new int[2]{150,80};
var SH2 = new int[2]{0,2};
var SB2 = new string[2]{"Açıklama","Değer"};
Sistem.Tablo(Tbl_Vip_Tmnt, 450, 100, 250, 200, 2, 7, SG2, SH2, SB2);
Sistem.TabloTemizle(Tbl_Vip_Tmnt);
Sistem.TabloYazdir(Tbl_Vip_Tmnt, 0, 0, "Teminat Toplamı", Color.White, Color.Black);
Sistem.TabloYazdir(Tbl_Vip_Tmnt, 1, 0, ViopHesap.TeminatToplam.ToString("0.00"), Color.White, Color.Black);
Sistem.TabloYazdir(Tbl_Vip_Tmnt, 0, 1, "Başlangıç Teminatı", Color.White, Color.Black);
Sistem.TabloYazdir(Tbl_Vip_Tmnt, 1, 1, ViopHesap.TeminatBaslangic.ToString("0.00"), Color.White, Color.Black);
Sistem.TabloYazdir(Tbl_Vip_Tmnt, 0, 2, "Sürdürme Teminatı", Color.White, Color.Black);
Sistem.TabloYazdir(Tbl_Vip_Tmnt, 1, 2, ViopHesap.TeminatSurdurme.ToString("0.00"), Color.White, Color.Black);
Sistem.TabloYazdir(Tbl_Vip_Tmnt, 0, 3, "Kullanılabilir Teminat", Color.White, Color.Black);
Sistem.TabloYazdir(Tbl_Vip_Tmnt, 1, 3, ViopHesap.TeminatKullanilabilir.ToString("0.00"), Color.White, Color.Black);
Sistem.TabloYazdir(Tbl_Vip_Tmnt, 0, 4, "Çekilebilir Teminat", Color.White, Color.Black);
Sistem.TabloYazdir(Tbl_Vip_Tmnt, 1, 4, ViopHesap.TeminatCekilebilir.ToString("0.00"), Color.White, Color.Black);
////////////////////////////////
// Bekleyen Emirler
var BekleyenList = ViopHesap.BekleyenEmirler;
// Tabloya Yazdır
string Tbl_Vip_B_Emir = "VIOP BEKLEYEN";
var SG3 = new int[7]{170,45,45,45,70,45,45};
var SH3 = new int[7]{0,1,1,1,1,1,1};
var SB3 = new string[7]{"Sembol", "İşlem", "Fiyat", "Miktar", "Emir No", "Emir Tip","Fiyat Tip"};
Sistem.Tablo(Tbl_Vip_B_Emir, 200, 300, 500, 200, 7, 50, SG3, SH3, SB3);
Sistem.TabloTemizle(Tbl_Vip_B_Emir);
for (int i = 0; i < BekleyenList.Count; i++)
{
Renk = Color.Black;
if (BekleyenList[i].BuySell.Substring(0,1) == "A")
Renk = Color.Blue;
else if (BekleyenList[i].BuySell.Substring(0,1) == "S")
Renk = Color.Red;
Sistem.TabloYazdir(Tbl_Vip_B_Emir, 0, i, BekleyenList[i].Symbol, Color.White, Renk);
Sistem.TabloYazdir(Tbl_Vip_B_Emir, 1, i, BekleyenList[i].BuySell, Color.White, Renk);
Sistem.TabloYazdir(Tbl_Vip_B_Emir, 2, i, BekleyenList[i].Price.ToString("0.000"), Color.White, Renk);
Sistem.TabloYazdir(Tbl_Vip_B_Emir, 3, i, BekleyenList[i].Balance.ToString("0"), Color.White, Renk);
Sistem.TabloYazdir(Tbl_Vip_B_Emir, 4, i, BekleyenList[i].OrderNo, Color.White, Renk);
Sistem.TabloYazdir(Tbl_Vip_B_Emir, 5, i, BekleyenList[i].OrderType, Color.White, Renk);
Sistem.TabloYazdir(Tbl_Vip_B_Emir, 6, i, BekleyenList[i].PriceType, Color.White, Renk);
}
/////////////////////
// Gerçekleşen Emirler
var GerceklesenList = ViopHesap.GerceklesenEmirler;
// Tabloya Yazdır
string Tbl_Vip_G_Emir = "VIOP GERCEKLESEN";
var SG4 = new int[5]{170,50,50,50,70};
var SH4 = new int[5]{0,1,1,1,2};
var SB4 = new string[5]{"Sembol", "İşlem", "Fiyat", "Miktar", "Emir No"};
Sistem.Tablo(Tbl_Vip_G_Emir, 200, 500, 450, 200, 5, 100, SG4, SH4, SB4);
Sistem.TabloTemizle(Tbl_Vip_G_Emir);
for (int i = 0; i < GerceklesenList.Count; i++)
{
if (GerceklesenList[i].BuySell.Substring(0,1) == "A")
Renk = Color.Blue;
else if (GerceklesenList[i].BuySell.Substring(0,1) == "S")
Renk = Color.Red;
Sistem.TabloYazdir(Tbl_Vip_G_Emir, 0, i, GerceklesenList[i].Symbol, Color.White, Renk);
Sistem.TabloYazdir(Tbl_Vip_G_Emir, 1, i, GerceklesenList[i].BuySell, Color.White, Renk);
Sistem.TabloYazdir(Tbl_Vip_G_Emir, 2, i, GerceklesenList[i].Price.ToString("0.000"), Color.White, Renk);
Sistem.TabloYazdir(Tbl_Vip_G_Emir, 3, i, GerceklesenList[i].Amount.ToString("0"), Color.White, Renk);
Sistem.TabloYazdir(Tbl_Vip_G_Emir, 4, i, GerceklesenList[i].OrderNo, Color.White, Renk);
}
}
else
{ if (ViopHesap == null) Sistem.Mesaj(" A.Kurum hesabına Login OL") ; }
////////////
} // ZamanKontrolSaniye
Bear_Bull
@BearBull26
|
|
var p1 = 3;
var V = Sistem.GrafikVerileri;
var C = Sistem.GrafikFiyatSec("Kapanis");
var H = Sistem.GrafikFiyatSec("Yuksek");
var L = Sistem.GrafikFiyatSec("Dusuk");
var HH = Sistem.HHV(p1, H);
var LL = Sistem.LLV(p1, L);
var B2 = Sistem.GrafikVerileriniOku(Sistem.Sembol, "5");
var C2 = Sistem.GrafikFiyatOku(B2,"Kapanis");
var adx5 = Sistem.ADX(B2, 8);
var adxx = Sistem.DonemCevir(V, B2, adx5);
var a = Sistem.Liste(0);
var b = Sistem.Liste(0);
var SonYon = "";
//for (int i =Sistem.BarSayisi-55; i < Sistem.BarSayisi; i++)
for (int i =1; i < Sistem.BarSayisi; i++)
{
a[i] = HH[i] - ((HH[i] - LL[i]) * 0.25f);
b[i] = LL[i] + ((HH[i] - LL[i]) * 0.25F);
}
for (int i = 1; i < Sistem.BarSayisi; i++)
{
if ( C[i] > a [i] && C[i] > b [i] &&SonYon != "A")
{
Sistem.Yon[i] = "A";
SonYon = "A";
}
else if ( C[i] < b [i] && C[i] < a [i] && SonYon != "S")
{
Sistem.Yon[i] = "S";
SonYon = "S";
}
}
Sistem.Cizgiler[3].Deger = adxx;
Sistem.Cizgiler[4].Deger = Sistem.Liste(25F);
Sistem.Cizgiler[5].Deger = Sistem.Liste(15F);
Sistem.DolguEkle(4,3,Color.LightCoral ,Color.White);
var ad = "bb" ;
var periyot = "5";
var V1 = Sistem.GrafikVerileriniOku(Sistem.Sembol, periyot);
var S5DK = Sistem.SistemGetir(ad, Sistem.Sembol, periyot) ;
var cizgi5= Sistem.Liste(V1.Count,0);
for (int i = 1; i < V1.Count; i++)
{
cizgi5[i] = S5DK.Cizgiler[7].Deger[i-1];
}
var yon5 = Sistem.DonemCevir(V, V1, cizgi5 ) ;
Sistem.Cizgiler[7].Deger=yon5;
1 dakikalık grafik üzerinde çalışıyorum
grafik üzerindeki yeşil çizgi ilgili bb adlı sistemin 5 dakikalığımnı çağırıyorum
bu sistem 5 dakikalık siztemdede al sat sinyali veriyor
bb adlı sistem 5 dk lıkta al iken bu çizgi yeşil olsun , sat da iken kırmızı olsun istiyorum
üst periyot olunca yapamadım
basit bir şeyse yardımcı olabilinirse sevinirim
bb sistemde aşağıda
var p1 = 3;
var V = Sistem.GrafikVerileri;
var C = Sistem.GrafikFiyatSec("Kapanis");
var H = Sistem.GrafikFiyatSec("Yuksek");
var L = Sistem.GrafikFiyatSec("Dusuk");
var HH = Sistem.HHV(p1, H);
var LL = Sistem.LLV(p1, L);
var HLMID = Sistem.ListeOrta(HH, LL);
var HLUP = Sistem.ListeOrta(HH, HLMID);
var HLDOWN = Sistem.ListeOrta(HLMID, LL);
var B2 = Sistem.GrafikVerileriniOku(Sistem.Sembol, "5");
var C2 = Sistem.GrafikFiyatOku(B2,"Kapanis");
var adx5 = Sistem.ADX(B2, 8);
var adxx = Sistem.DonemCevir(V, B2, adx5);
var a = Sistem.Liste(0);
var b = Sistem.Liste(0);
var SonYon = "";
var X = Sistem.Liste(0);
var RenkListesi = new List<Color>(new Color[Sistem.BarSayisi]);
//for (int i =Sistem.BarSayisi-55; i < Sistem.BarSayisi; i++)
for (int i =1; i < Sistem.BarSayisi; i++)
{
a[i] = HH[i] - ((HH[i] - LL[i]) * 0.25f);
b[i] = LL[i] + ((HH[i] - LL[i]) * 0.25F);
}
for (int i = 1; i < Sistem.BarSayisi; i++)
{
if ( C[i] > a [i] && C[i] > b [i] &&SonYon != "A")
{
Sistem.Yon[i] = "A";
SonYon = "A";
}
else if ( C[i] < b [i] && C[i] < a [i] && SonYon != "S")
{
Sistem.Yon[i] = "S";
SonYon = "S";
}
if (SonYon == "A")
{
X[i] = b[i];
RenkListesi[i] = Color.Green;
}
else if (SonYon == "S")
{
X[i] = a[i];
RenkListesi[i] = Color.Red;
}
}
Sistem.Cizgiler[7].Deger = X;
Sistem.Cizgiler[7].RenkListesi = RenkListesi;
Sistem.Cizgiler[3].Deger = adxx;
Sistem.Cizgiler[4].Deger = Sistem.Liste(25F);
Sistem.Cizgiler[5].Deger = Sistem.Liste(15F);
Sistem.DolguEkle(4,3,Color.LightCoral ,Color.White);
Yer İmleri