Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz, hiçbir yerde - 6. - sayfa 248
![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
Neden bir dosyadan okuyorsun? ReadCBOE değişkeninde tüm dosyaya sahipsiniz, işkence yapın,
Bununla ilgili herhangi bir sorun yok, AMA tüm satır bir değişkene yerleştirilmedi! MT'nin satırın uzunluğu konusunda kendi sınırı vardır, siteden infa dosyaya yazılır ve dosya bu şekilde </body></html> biter, satır 65k karaktere ulaştığında (ya da öylesine) satır kopar ). Her durumda, son dosya boyutu 69KB'dir.
Makaleyi okuyun. Prensip olarak, bir dosyanın belirli bir satırını okumanın bir yolu yoktur, belirli bir satıra kadar olan tüm satırları okumanız gerekir ... makalede ayrıca bu fonksiyon vardır - satır satır okumak için bir metin dosyası.
Vay canına, teşekkürler, kendi başıma bulamadım, HTML etiketine göre arama yapmak zorunda kaldım.
İşte böyle çalışır. Kontrol.
Genel olarak, bir hata var ve işte burada
Oh, sen ve kahraman Junko, sessizce kodu düzelttiniz ve ... sanki öyleymiş gibi. Sonuçta, yine de öyle olduğunu iddia edeceksiniz, ama ben araba kullanmaktan hoşlanıyor muyum? Evet?
Neyi düzelttin? NULL olup olmadığını kontrol edin? Bu iyi. Sevilmeyecek ne var? Bir hata bulursam düzeltirim.
Düzeltmiyorsun. Gördüm. Direkt gösterdiğinde bile düzeltmedi. Hata yapmaktan ve onları düzeltmemekten hoşlanır mısınız? O zaman bununla övünmek mi?
=============
Affedildim. Neredeyse hiç MQL4'te yazmam. Yazmanız gereken her şey. Tanımlayıcılar ve hatalarla çalışmıyorum. Uzun zamandır yazılmış, kapsüllenmiş ve unutulmuşlardır.
C++'da tanıtıcılar NULL ile karşılaştırılır.
Genel olarak, bir hata var ve işte burada
Başka bir şey yazın veya dosyayı silin veya yalnızca kayıt için bayrağı ayarlayın.
Neyi düzelttin? NULL olup olmadığını kontrol edin? Bu iyi. Sevilmeyecek ne var? Bir hata bulursam düzeltirim.
Düzeltmiyorsun. Gördüm. Direkt gösterdiğinde bile düzeltmedi. Hata yapmaktan ve onları düzeltmemekten hoşlanır mısınız? O zaman bununla övünmek mi?
=============
Affedildim. Neredeyse hiç MQL4'te yazmam. Yazmanız gereken her şey. Tanımlayıcılar ve hatalarla çalışmıyorum. Uzun zamandır yazılmış, kapsüllenmiş ve unutulmuşlardır.
C++'da tanıtıcılar NULL ile karşılaştırılır.
Değil. İşler. Sadece bu kod dosyanın üzerine yazmıyor. Daha önce yazılmış bir dosyaya bakıyorsunuz. Çalışmıyor gibi görünüyor. Hatta gerektiğinde girildi ve hattın devamı aynı kaldı.Başka bir şey yazın veya dosyayı silin veya yalnızca kayıt için bayrağı ayarlayın.
Aha, kazandım... Teşekkürler.
extern int OpenMM = 25; // Время открытия ордеров (минуты).
extern int CloseHH = 23; // Время закрытие/удаление ордеров (часы).
extern int CloseMM = 45; // Время закрытие/удаление ордеров (минуты).
Kodun bu kısmı çalışıyor ve bununla ilgili herhangi bir şikayet yok. Cuma günü saat 23:45'te verilen siparişler normal şekilde kapanır. DeleteOrders() işlevi iyi çalışıyor.
if (!IsTradeAllowed()) return(0); // Пропустить тик, если терминал занят.
if (Close_All_Orders) // Разрешение на закрытие ордеров.
if (DayOfWeek() >= 5 && // Если пятница и закрытие ордеров разрешено, то
TimeHour(TimeCurrent()) >= CloseHH && // в назначенный час
TimeMinute(TimeCurrent()) >= CloseMM ) // в назначенные минуты -
{ DeleteOrders(); return(0); } // все ордера закрываются.
Benzetme yoluyla, açılış emirleri için kod derlenmiştir. Belirtilen biçimde, kod hiç çalışmıyor.
Ancak, satırı kaldırırsanız veya dakikalarla yorum yaparsanız, her şey yolunda gider, siparişler 14:00'te açılır. OpenOrders() işlevi iyi çalışıyor.
Bu (veya başka bir) kod satırındaki sorun ne olabilir: TimeMinute( TimeCurrent() ) >= OpenMM ?
if (TimeHour(TimeCurrent()) >= OpenHH && // В назначенный час,
TimeMinute(TimeCurrent()) >= OpenMM ) // в назначенные минуты -
{ OpenOrders(); return(0); } // открыть ордера.
Not: Prensip olarak, İnternette siparişleri zamanında açan ve kapatan oldukça fazla Uzman Danışman var. Ancak, bir nedenden dolayı uygun olmayabilirler. Bu hatayı düzeltmek istiyorum...
Teşekkürler...
İyi zaman. Hatayla başa çıkmak için yardım edin.
Her şey doğru görünüyor, çalışması gerekiyor. Kodunuzu evde denedim - dakikalar içinde çalışıyor. Ancak yalnızca 14:25 ila 14:59, 15:25 ila 15:59 vb.
belki daha iyidir