Kendi yazdýðým matriks kodlarým var
Matriks dilini iyi biliyorum ve kafamda ki trading stratejimi
Kodlara uzun uzun dökebiliyorum
Makul baþarýlar ile sistemlerimden gayet memnunum
Fakat malum Matriks donmalarý beni de artýk pes ettirme noktasýna taþýyor
Ve
C# dilini hiç ama hiç bilemediðim için
Kendi Matriks kodlarýmý c# diline çeviremiyorum
Bu iþi
Yani kod çevirme iþini
Profesyonel olarak hakký ile yapabilenler varsa
Ücreti karþýlýðýnda yaptýrmak istiyorum
Bu yetkinlikte bir coder tanýdýðý olanlarýnýz var mý arkadaþlar?
Yardýmcý olursanýz minnettar kalýrým
Ben amatör olarak C# biliyorum. Ayný zamanda c# yazýlýmcý þirket sahibi bir arkadaþým daha var benim kullanýdýgým formullerin kodlamasýný yapývermiþti.
Arkadaþým ancak bizimde aramýzdaki iliþki ticari boyutta devam ediyor mümkün oldugunca.
Ýsterseniz bu konuda ÜCRET karþýlýðý yapýlacak deðiþtirilecek formulleri önce ben benim altýndan kalkamayacagým bir tasarým varsa diðer yazýlýmcý arkadaþa yaptýrtabilirim.
Çok zor deðillerse ideal formlarýnda vesaire de bi ihtimal çözdürtebilirsiniz bedava. Ancak çok zaman alabilir birde herkesin yardýmcý olacaðýnýn garantisi yok. Özellikle hazýr formul isteyenlere genellikle ben dahil pek yapmak istemiyoruz. Genellikle öðrenmeye istekli kiþiler formul bir ksýmýný çevirmiþ bir kýsmýnda týkanmýþ kiþilerin formullerini tamamlayýveriyoruz cunku tamamlayývermek daha basit.
Ben kendim þu an C# dilinde idealle entegreli bir arayüz tasarlýyorum bir yerde sýkýþtým. Yapamadým, Hemen yazýlýmcý arkadaþla iletiþime geçip problemi çözdüm gönlünden ne geçiyor dedim 40 TL dedi Attým 40 TL yi.
Her yazýlýmcý ideal formulunu çeviremiyor bu arada ben bir sürü yazýlýmcýyla tanýþtým. adamlar anlamýyor ne borsadan anlýyor ne metotlar ne indikatorlerden o sebeple hem yazýlýmcý hemde ideale ve borsaya hakim adam piyasada bulamazsýn.
Ben ve yazýlýmcý arkadaþým idealdeki metotlara ve indikatorlerý biliyoruz.
Size tavsiyem þu C# dili herþeyini anlatmasamda idealde basit bir sistem nasýl yazýlýrýn MANTIÐINI anlattýðým video var. Ýþinize yarar ve videodan anlayabilirseniz oradan kendi kendinize formulleri yazabilirsiniz.
https://www.youtube.com/watch?v=090V3F7T-E0&t=1417s
Kendim uðraþamam bu iþlerle birileri yazýverse hayýran dersen hisse netin ideal formulleri baþlýðýna anlatabilirsin. Ancak yazýlabileceðinin garantisi yok.
Benim vaktim yok uðraþamam da çevirememde diyor parasýyla anlaþýp formulleri yazdýrýp biran önce iþimi bitirmek istiyorum dersen. Özel mesaj at telefonla konuþalým iþine gelirse yaptýrýrsýn iþine gelmez alternatifleri deðerlendirirsin.
Senin almaya cesaret edemediðin riskleri alanlar, senin yaþamak istediðin hayatý yaþarlar..
Sokrates twit @erhanacikgoz1
ODEV 1
PHP Code://ODEV 1 https://www.hisse.net/topluluk/showthread.php?t=31870&p=3622591#post3622591
var V = Sistem.GrafikVerileri ; //V adýnda deðiþkene grafik verileri listesini ata
var Veriler= Sistem.GrafikFiyatSec("Kapanis"); // Veriler deðiþkenine Grafik verlerindeki Kapanýþ Fiyatlarýný oku/listele.
var RSI100 = Sistem.RSI(100);
var RSI150 = Sistem.RSI(150);
var x1 = Sistem.Liste(0); // x1 isminde boþ bir liste oluþtur.
for (int i = 1; i < V.Count; i++) // Her barý tek tek tararken
{
//x1 in son deðerine ata = RSI14'ün þimdiki deðeri büyükse RSI30'un þimdiki deðerinden ve MA1'in þimdiki deðeri MA2'nin þimdiki deðerinden büyükse sorgula doðruysa 1 yaz : ile bitir. Tam tersi koþullarda da -1 yap ve : ile bu iþlemleri bitir.
x1[i] =
RSI100[i] > RSI150[i] ? 1 : RSI100[i] < RSI150[i] ? -1 :
x1[i] ;
}
// sistem
var SonYon = ""; // sonyon isminde için boþ bir deðiþken oluþtur.
for (int i = 1; i<V.Count; i++) //Her barý tek tek tararken
{
if ( x1[i] == 1 && SonYon != "A" ) // Eðer x1'in þimdiki deðeri eþit ise 1'E ve SON YÖN eþit deðilse A ya
{
Sistem.Yon[i] = "A"; // SOn yon metoduna A Yaz Böylece ok iþaretleri yerleþsin
SonYon = Sistem.Yon[i]; // SOn yon deðiþkeninede A harfini ata.
}
else if ( x1[i] == -1 && SonYon != "S" ) // SAT
{
Sistem.Yon[i] = "S";
SonYon = Sistem.Yon[i];
}
else if ( x1[i] == 10 && (SonYon == "A" || SonYon == "S") ) // öyle deðilse eðer x1 eþitse 0 ve son yon eþitse a ya veya son s ye eþit ise son yone F yaz yani nakite geç
{
Sistem.Yon[i] = "F";
SonYon = Sistem.Yon[i];
}
}
Sistem.GetiriHesapla("31/12/2004", 0.025 ); // Þu tarihten baþlayarak kz hesapla ve her iþlemin kaymasýna bu puaný düþ.
var KarZarar = Sistem.GetiriKZ;// ortaya çýkacak kz eðrisine KarZarar isimli deðiþkene ata
Sistem.Cizgiler[0].Deger = RSI100; //Panel2
Sistem.Cizgiler[1].Deger = RSI150; //Panel2
Sistem.Cizgiler[2].Deger = KarZarar; // Panel2 Fiyatlarýn altýnda yeni pencere
Sistem.Cizgiler[3].Deger = x1; // Panel4 x1 Ýsimli listemize atanan deðerleri çizgi olarak gösterir panel4 te
Sistem.Cizgiler[3].Stil = 6;
![]()
ODEV 2
PHP Code://ODEV 2
var V = Sistem.GrafikVerileri ; //V adýnda deðiþkene grafik verileri listesini ata
var Veriler= Sistem.GrafikFiyatSec("Kapanis"); // Veriler deðiþkenine Grafik verlerindeki Kapanýþ Fiyatlarýný oku/listele.
var KUCUKMA = Sistem.MA(100, "Simple", "Kapanis"); // 150 Adet bar kapanýsýnýn basit ortalamasýný hesaplayýp MA1 ismine ata
var ORTANCAMA = Sistem.MA(150, "Simple", "Kapanis"); //
var BUYUKMA = Sistem.MA(200, "Simple", "Kapanis"); //
var x1 = Sistem.Liste(0); // x1 isminde boþ bir liste oluþtur.
for (int i = 1; i < V.Count; i++) // Her barý tek tek tararken
{
//x1 in son deðerine ata = RSI14'ün þimdiki deðeri büyükse RSI30'un þimdiki deðerinden ve MA1'in þimdiki deðeri MA2'nin þimdiki deðerinden büyükse sorgula doðruysa 1 yaz : ile bitir. Tam tersi koþullarda da -1 yap ve : ile bu iþlemleri bitir.
x1[i] =
KUCUKMA[i] > ORTANCAMA[i] && KUCUKMA[i] > BUYUKMA[i] && ORTANCAMA[i] > BUYUKMA[i] ? 1 : KUCUKMA[i] < ORTANCAMA[i] && KUCUKMA[i] < BUYUKMA[i] && ORTANCAMA[i] < BUYUKMA[i] ? -1 :
x1[i] ;
}
// sistem
var SonYon = ""; // sonyon isminde için boþ bir deðiþken oluþtur.
for (int i = 1; i<V.Count; i++) //Her barý tek tek tararken
{
if ( x1[i-1] == 1 && SonYon != "A" ) // Eðer x1'in þimdiki deðeri eþit ise 1'E ve SON YÖN eþit deðilse A ya
{
Sistem.Yon[i] = "A"; // SOn yon metoduna A Yaz Böylece ok iþaretleri yerleþsin
SonYon = Sistem.Yon[i]; // SOn yon deðiþkeninede A harfini ata.
}
else if ( x1[i-1] == -1 && SonYon != "S" ) // SAT
{
Sistem.Yon[i] = "S";
SonYon = Sistem.Yon[i];
}
else if ( x1[i-1] == 10 && (SonYon == "A" || SonYon == "S") ) // öyle deðilse eðer x1 eþitse 0 ve son yon eþitse a ya veya son s ye eþit ise son yone F yaz yani nakite geç
{
Sistem.Yon[i] = "F";
SonYon = Sistem.Yon[i];
}
}
Sistem.GetiriHesapla("31/12/2004", 0.025 ); // Þu tarihten baþlayarak kz hesapla ve her iþlemin kaymasýna bu puaný düþ.
var KarZarar = Sistem.GetiriKZ;// ortaya çýkacak kz eðrisine KarZarar isimli deðiþkene ata
Sistem.Cizgiler[0].Deger = KUCUKMA; //Panel1 Fiyatlarýn üzeri
Sistem.Cizgiler[1].Deger = ORTANCAMA; //Panel1 Fiyatlarýn üzeri
Sistem.Cizgiler[2].Deger = BUYUKMA; // Panel1 Fiyatlarýn üzeri
Sistem.Cizgiler[3].Deger = KarZarar; // Panel3 KZ eðrisinin altýna yeni bir pencere
Sistem.Cizgiler[4].Deger = x1; // Panel4 x1 Ýsimli listemize atanan deðerleri çizgi olarak gösterir panel4 te
Sistem.Cizgiler[4].Stil = 5;
![]()
Ödev 3
PHP Code://ODEV 3
var V = Sistem.GrafikVerileri ; //V adýnda deðiþkene grafik verileri listesini ata
var Veriler= Sistem.GrafikFiyatSec("Kapanis"); // Veriler deðiþkenine Grafik verlerindeki Kapanýþ Fiyatlarýný oku/listele.
var KUCUKMA = Sistem.MA(100, "Simple", "Kapanis"); // 150 Adet bar kapanýsýnýn basit ortalamasýný hesaplayýp MA1 ismine ata
var ORTANCAMA = Sistem.MA(150, "Simple", "Kapanis"); //
var BUYUKMA = Sistem.MA(200, "Simple", "Kapanis"); //
var x1 = Sistem.Liste(0); // x1 isminde boþ bir liste oluþtur.
for (int i = 1; i < V.Count; i++) // Her barý tek tek tararken
{
//x1 in son deðerine ata = RSI14'ün þimdiki deðeri büyükse RSI30'un þimdiki deðerinden ve MA1'in þimdiki deðeri MA2'nin þimdiki deðerinden büyükse sorgula doðruysa 1 yaz : ile bitir. Tam tersi koþullarda da -1 yap ve : ile bu iþlemleri bitir.
x1[i] =
KUCUKMA[i] > ORTANCAMA[i] && KUCUKMA[i] > BUYUKMA[i] && ORTANCAMA[i] > BUYUKMA[i] ? 1 : KUCUKMA[i] < ORTANCAMA[i] && KUCUKMA[i] < BUYUKMA[i] && ORTANCAMA[i] < BUYUKMA[i] ? -1 : KUCUKMA[i] > ORTANCAMA[i] && ORTANCAMA[i] < BUYUKMA[i] ? 10 : KUCUKMA[i] > ORTANCAMA[i] && ORTANCAMA[i] < BUYUKMA[i] ? 10 :
x1[i] ;
}
// sistem
var SonYon = ""; // sonyon isminde için boþ bir deðiþken oluþtur.
for (int i = 1; i<V.Count; i++) //Her barý tek tek tararken
{
if ( x1[i-1] == 1 && SonYon != "A" ) // Eðer x1'in þimdiki deðeri eþit ise 1'E ve SON YÖN eþit deðilse A ya
{
Sistem.Yon[i] = "A"; // SOn yon metoduna A Yaz Böylece ok iþaretleri yerleþsin
SonYon = Sistem.Yon[i]; // SOn yon deðiþkeninede A harfini ata.
}
else if ( x1[i-1] == -1 && SonYon != "S" ) // SAT
{
Sistem.Yon[i] = "S";
SonYon = Sistem.Yon[i];
}
else if ( x1[i-1] == 10 && (SonYon == "A" || SonYon == "S") ) // öyle deðilse eðer x1 eþitse 0 ve son yon eþitse a ya veya son s ye eþit ise son yone F yaz yani nakite geç
{
Sistem.Yon[i] = "F";
SonYon = Sistem.Yon[i];
}
}
Sistem.GetiriHesapla("31/12/2004", 0.025 ); // Þu tarihten baþlayarak kz hesapla ve her iþlemin kaymasýna bu puaný düþ.
var KarZarar = Sistem.GetiriKZ;// ortaya çýkacak kz eðrisine KarZarar isimli deðiþkene ata
//Panel1 Fiyatlarýn üzeri
Sistem.Cizgiler[0].Deger = KUCUKMA; Sistem.Cizgiler[0].Panel = 1;
Sistem.Cizgiler[0].Aciklama = "KUCUKMA";
Sistem.Cizgiler[1].Deger = ORTANCAMA; Sistem.Cizgiler[1].Panel = 1;
Sistem.Cizgiler[1].Aciklama = "ORTANCAMA";
Sistem.Cizgiler[2].Deger = BUYUKMA; Sistem.Cizgiler[2].Panel = 1;
Sistem.Cizgiler[2].Aciklama = "BUYUKMA";
// Panel2 KZ eðrisinin altýna yeni bir pencere
Sistem.Cizgiler[3].Deger = KarZarar; Sistem.Cizgiler[3].Panel = 2;
// Panel3 x1 Ýsimli listemize atanan deðerleri çizgi olarak gösterir panel3 te
Sistem.Cizgiler[4].Deger = x1; Sistem.Cizgiler[4].Panel = 3;
Sistem.Cizgiler[4].Stil = 5;
3 numaralý ödev zordu doðru olup olmadýðýndan emin deðilim.
Yer Ýmleri