Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz, hiçbir yerde - 6. - sayfa 714
Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım 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! 711. sayfada buna benzer bir soru sormuştum maalesef kimse cevap vermemiş, belki şimdi birileri...
Bunu şöyle yapıyorum:
Durumu sıfır toplam konumuna (kilit) getiriyorum, ardından kilidi kapatıyorum.
Şimdi, detay.
1. Toplam pozisyonun hesaplanması:
siparişlerin numaralandırılması
Bu bir satın alma ise, toplam pozisyon sipariş lotunun büyüklüğü kadar artırılır.
Bir satış varsa, toplam pozisyon sipariş lotu miktarı kadar azaltılır.
sipariş döngüsünün sonu
2. Bir kilit oluşturun:
toplam pozisyon sıfırdan büyükse sat;
toplam pozisyon sıfırdan azsa, satın alın;
yoksa hiçbir şey yapmıyoruz.
Parti büyüklüğü toplam pozisyona eşittir.
3. Kilidi kapatın (kapalı konumlar)
Sonsuz döngü ( while (true))
alış ve satış emirlerinin biletlerini sıfırla
sipariş döngüsü
eğer (satın al) bir satın alma emri biletini düzeltirse
eğer (sat) bir satış emri biletini düzeltirse
sipariş döngüsünün sonu
eğer (bir satış ve bir alım varsa) o zaman çapraz kapat
aksi takdirde sonsuz döngüden çık (break)
sonsuz bir döngünün sonu
Şimdi bu algoritmayı seçilen dilde (MQL4) programlıyoruz.
beyler, bekleyen bir sipariş için bir kapanış saati belirleyip belirlemediğimi söyleyin
Data_1=iTime(Symbol(),PERIOD_D1,0)+86400; // sipariş ömrü
zaten piyasadaysa (tobish çıktı), yine de kapanacak veya kapanmayacak
beyler, bekleyen bir sipariş için bir kapanış saati belirleyip belirlemediğimi söyleyin
Data_1=iTime(Symbol(),PERIOD_D1,0)+86400; // sipariş ömrü
zaten piyasadaysa (tobish çıktı), yine de kapanacak veya kapanmayacak
Numara
Herkese merhaba, dosya işlemleriyle hiç çalışmadım ama burada mecbur kaldım ve bir türlü aydınlatamıyorum.
Görev, her gün birkaç kez csv dosyasına veri yazmaktır.
Yani bugün 24.09.2014, veriler türe göre farklı hücrelerde bir satıra yazılır
bir B C
1 Tarih | değer | değer |
bugün veriler değiştiyse, 24.09.2014 tarihinden itibaren satırı yeniden yazıyoruz
yeni bir gün geldiyse, o zaman yeni bir hatta gidin.
Sigara içiyorum ve sigara içmiyorum...
Herkese merhaba, dosya işlemleriyle hiç çalışmadım ama burada mecbur kaldım ve bir türlü aydınlatamıyorum.
Görev, her gün birkaç kez csv dosyasına veri yazmaktır.
Yani bugün 24.09.2014, veriler türe göre farklı hücrelerde bir satıra yazılır
bir B C
1 Tarih | değer | değer |
bugün veriler değiştiyse, 24.09.2014 tarihinden itibaren satırı yeniden yazıyoruz
yeni bir gün geldiyse yeni bir hatta geçiyoruz.
Sigara içiyorum ve sigara içmiyorum...
Muhtemelen böyle bir şey.
ve veriler değiştiyse son satırı nasıl yeniden yazabilirim?
ve veriler değiştiyse son satırı nasıl yeniden yazabilirim?
Yardım için FileSeek() .
Veriler değiştiyse, fileseek ile üzerine yazacağımız yere bir işaretçi koymanız, normal filewrite ... yöntemiyle üzerine yazmanız, dosyanın sonunu hatırlamanız ve WinApi işlevini kesmeniz gerekir.
Veya normal yöntemle - dosyanın en sonuna yararlı bilgilerin bittiği konumu ekleyin ve bir sonraki çalışma sırasında bu konumu okuyun. (Pozisyonu başka bir dosyaya yazabilirsiniz)
Ancak yine de kesmek daha iyidir, ancak standart bir düzeltme aracı yoktur ((
bu Zhunko 12.09.2014 20:19 #
WinApi işlevleri de ilginç olurdu