![MQL5 - MetaTrader 5 müşteri terminalinde yerleşik ticaret stratejileri dili](https://c.mql5.com/i/registerlandings/logo-2.png)
Ticaret fırsatlarını kaçırıyorsunuz:
- Ücretsiz ticaret uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
Merhaba,
Dosya işlevlerini kullanıyorum ve iyi çalışıyorlar!
Oldukça büyük dosyalar kullanıyorum ve bir for-loop ile çalışıyorum.
Her döngüde dosyanın bir satırını okuyorum. Bu yüzden bazen bu satırlardan birindeki bir kelimeyi değiştirmek istiyorum.
Bunu yapmanın kolay bir yolu var mı? Dosyayı okumak için kapatır ve yazmak için açarsam, dosya işaretçim dosyanın sonuna gider.
Ancak gerçek dosya işaretçisi konumunu alma olasılığı var mı? Böylece dosyanın ortasına doğrudan fe yazabiliyorum.Çizgiler sabit boyutta değilse kolay bir yol yoktur (o zaman tüm dosyayı yeniden yazmanız gerekir)
Çizgiler sabit boyuttaysa FileSeek (fileHandle,lineSize*(numberOfLine-1),SEEK_SET); ve sonra değişiklikleri o belirli satıra yazın
Mesajımı tekrar edersem özür dilerim...ama bu benim için önemli ...Kod örneğine ihtiyacım var:
Merhaba Mladen,
5 dakikalık zaman diliminde, stok 5-3-3'ün 15 dakikalık zaman diliminde 20'nin altında olduğunu gösteren küçük bir gösterge istiyorum.
Stok çoklu zaman çerçevesi istemiyorum .... ancak daha düşük tf'de daha yüksek zaman çerçevesi sinyali istiyorum.
Şimdiden teşekkürler
Merhaba Mladen,
Gecikmesiz ma nrp değerlerini CSV dosyasına aktarmak istiyorum.Kırmızı(domates) renkler negatif, mavi renkler pozitif değerler olmalı.Teşekkürler.
Merhaba Mladen , gecikme olmayan ma nrp değerlerini CSV dosyasına aktarmak istiyorum.Kırmızı(domates) renkler negatif, mavi renkler pozitif değerler olmalı.Teşekkürler.
nevar
İşte bunu yapan bir komut dosyası: export_nonlag_ma_data.mq4
Göstergeler klasöründeki bu gönderideki "NonLag ma nrp nmc"ye de ihtiyacınız var: https://www.mql5.com/en/forum/general
AZRUL
180 satırında aramak istediğiniz değeri sağlamıyorsunuz (bu satır:
int sıralama = sıra();
yani rank fonksiyonu herhangi bir değerle karşılaştırılamaz. Aramanız aşağıdaki biçimde olmalıdır:
int sıralama = rank(someValueToRank);Sayın MLADEN,
Artan Sırada bir SIRALAMA yapmak için Göstergemden Toplam çıktı sıralamasını almaya çalıştım ancak başaramadım... Sadece 2 çıktı aldım ve bunlardan sadece biri doğru.. (Sanırım öyle..) ve kalan (5 tane daha) (0) sıfır......![](https://c.mql5.com/forextsd/smiles/embaressed_smile.png)
Düşünebildiğim her şeyi denedim ve onları Artan veya Azalan iyi olacak şekilde sıralamak için nasıl bir kod üretileceğine dair fikirler tükeniyor.... LÜTFEN YARDIM EDER MİSİNİZ........
Zamanınız ve uzmanlığınız her zaman takdir edilir ve ihtiyaç duyulur.......![](https://c.mql5.com/forextsd/smiles/angel_smile.png)
saygılarımla
AZRUL...
Sayın MLADEN,
Artan Sırada bir SIRALAMA yapmak için Göstergemden Toplam çıktı sıralamasını almaya çalıştım ancak başaramadım... Sadece 2 çıktı aldım ve bunlardan sadece biri doğru.. (Sanırım öyle..) ve kalan (5 tane daha) (0) sıfır......![](https://c.mql5.com/forextsd/smiles/embaressed_smile.png)
Düşünebildiğim her şeyi denedim ve onları Artan veya Azalan iyi olacak şekilde sıralamak için nasıl bir kod üretileceğine dair fikirler tükeniyor.... LÜTFEN YARDIM EDER MİSİNİZ........
Zamanınız ve uzmanlığınız her zaman takdir edilir ve ihtiyaç duyulur.......![](https://c.mql5.com/forextsd/smiles/angel_smile.png)
saygılarımla
AZRUL...12BPRO
Sanırım size daha önce de söylemiştim: 2 boyutlu bir sıralama/sıralama yapmanız gerekiyor (çünkü her par'da görüntülemek istediğiniz bir değer+sembol adı var) sadece değerleri sıralamak yeterli değil çünkü bu şekilde kaybediyorsunuz. sembol adları, değer yerine taşındığında sembol adını da karşılık gelen yere taşıyacak bir sıralama prosedürü yapmanız gerekir.
12BPRO Sanırım size daha önce de söyledim : 2 boyutlu bir sıralama/sıralama yapmanız gerekiyor (çünkü her par'da görüntülemek istediğiniz bir değer+sembol adı var) Bu şekilde olduğunuz için sadece değerleri sıralamanız yeterli değil. sembol isimlerini kaybetmek, değer yerine taşındığında sembol adını da karşılık gelen yere taşıyacak kendi sıralama prosedürünüzü yapmanız gerekir.
Sayın MLADEN,
Bu kodu sıralama prosedürünü ekleyerek denedim ve bir değer gösteriyor... maalesef son dizi değerini (TOTCAD) atlamış görünüyor... LÜTFEN bakar mısınız...
Çok üzgünüm, PROGRAMCI değilim .... pek anlamıyorum... Sevgili GURU'm..... Bunu öğrenmek için elimden geleni yapıyorum......
Zamanınız ve uzmanlığınız her zaman takdir edilir ve ihtiyaç duyulur.......
saygılarımla
AZRUL...
Sayın MLADEN,
Bu kodu sıralama prosedürünü ekleyerek denedim ve bir değer gösteriyor... maalesef son dizi değerini (TOTCAD) atlamış görünüyor... LÜTFEN bakar mısınız...
Çok üzgünüm, PROGRAMCI değilim .... pek anlamıyorum... Sevgili GURU'm..... Bunu öğrenmek için elimden geleni yapıyorum......
Zamanınız ve uzmanlığınız her zaman takdir edilir ve ihtiyaç duyulur.......
saygılarımla
AZRUL...AZRUL
İşte 2 boyutlu dizileri sıralayan bir sıralama rutini:
//
//------------------------------------------------------------------
//
//
//
// 2 dimenzional array shell sort
//
//
//
double PR[][2];
void SortIt()
{
int size ArrayRange(PR,0);
int i,j,increment = size / 2;
double temp,temi;
//
//
//
//
//
while (increment > 0)
{
for (i = increment; i < size; i++)
{
j = i;
temp = PR;
temi = PR;
while ((j >= increment) && (PR[j-increment,0] < temp))
{
PR[j,0] = PR[j-increment,0];
PR[j,1] = PR[j-increment,1];
j = j-increment;
}
PR[j,0] = temp;
PR[j,1] = temi;
}
if (increment == 2) increment = 1;
else increment = (increment / 2.2);
}
}PR dizisini vlues ve bir sembol için bir tür işaretle doldurun (örneğin PR[0,0] = eur için değer, PR[0,1] = 1 (bu, 1'in EUR için bir işaret olduğu anlamına gelir). SortIt() prosedürünü çağırın ve semboller için değerleri ve bunlara karşılık gelen işaretleri okuyun (örneğin, PR[5,1] == 1 (1 EUR anlamına gelir) alırsınız, bu da PR[4,0] değerinin olduğu anlamına gelir. EUR değeri)
AZRUL
İşte 2 boyutlu dizileri sıralayan bir sıralama rutini:
//
//------------------------------------------------------------------
//
//
//
// 2 dimenzional array shell sort
//
//
//
double PR[][2];
void SortIt()
{
int size ArrayRange(PR,0);
int i,j,increment = size / 2;
double temp,temi;
//
//
//
//
//
while (increment > 0)
{
for (i = increment; i < size; i++)
{
j = i;
temp = PR;
temi = PR;
while ((j >= increment) && (PR[j-increment,0] < temp))
{
PR[j,0] = PR[j-increment,0];
PR[j,1] = PR[j-increment,1];
j = j-increment;
}
PR[j,0] = temp;
PR[j,1] = temi;
}
if (increment == 2) increment = 1;
else increment = (increment / 2.2);
}
}Sayın MLADEN,
ÇOK TEŞEKKÜRLER SEVGİLİ Bayım(GURU).... siz benim KAHRAMANIMSINIZ VE
.... 6. Kredi...
BU FORUMU ÇOK SEVİYORUM....buradaki GURU'lara teşekkürler...
Bu diğerlerinin de işine yarar....
TEŞEKKÜRLER BAYIM....
saygılarımla
AZRUL...
need help to modify/add color changing rule by 2 moving averange (MA period 8 n MA period 24).
MA8 > MA24 ise, histo rengi=yeşil.
MA8 < MA24 ise, doku rengi=kırmızı.
işte gösterge bağlantısı: https://www.mql5.com/en/code/download/7992/BW_MFI.mq4hala bekliyorum... kendim tarafından zaten denendi (bu isteği göndermeden önce) ancak iyi bir sonuç yok, daha fazla arabelleğe mi ihtiyacınız var? ya da kodlayıcı olmadığım/kodlama becerisinden yoksun olduğum için. sadece BW MFI'yi başka bir göstergeyle birleştirmenin mümkün olup olmadığını bilmek istiyorum.