Bazen fiyat geçmişinin bir kısmını tablo şeklinde görüntülemek gerekir. Bu, CTRL+U ile Çubuklar/Tickler sekmesi seçilerek yapılabilir. Gerekli aralığı oraya elle girmek. Bu sıkıcı bir işlemdir.
Bu nedenle, aşağıdaki Uzman Danışman tarafından gösterilen ek bir işlevsellik oluşturdum.
#include <fxsaber\MultiTester\MTTester.mqh> // https://www.mql5.com/tr/code/26132#include <fxsaber\Keyboard\Keyboard.mqh> // https://www.mql5.com/tr/code/48393inputbool inTicks = true; // true - Ticks, false - Barsinputint inBefore = -60; // Saniye cinsinden önceinputint inAfter = 60; // Saniye cinsinden sonrainputENUM_TIMEFRAMES inPeriod = PERIOD_CURRENT; // Periyot (Çubuklar modu)datetime GetTime( constint X )
{
int Window;
datetime Res;
double Price;
return(ChartXYToTimePrice(0, X, 0, Window, Res, Price) ? Res : 0);
}
voidOnChartEvent( const int32_t id, constlong &lparam, constdouble&, conststring& )
{
if ((id == CHARTEVENT_CLICK) && KEYBOARD::IsControl())
{
constdatetime Time = GetTime((int)lparam);
if (Time)
{
if (inTicks)
MTTESTER::CopyTicks(_Symbol, Time + inBefore, Time + inAfter);elseMTTESTER::CopyRates(_Symbol, inPeriod, Time + inBefore, Time + inAfter);
}
}
}
Grafiğin gerekli yerine tıklarsınız (CTRL basılıyken) ve ilgili tablo verilerini bir kerede otomatik olarak alırsınız.
Seçilen işlevler sadece belirli veri alanlarını doldurur ve sorgular. Ardından GUI aracılığıyla neyle ilgilendiğinizi görürsünüz. Genel olarak otomasyon.
если бы время файлов в архиве совпадало со временем модификации в кодобазе. Не соответствует времени изменения конкретного файла. Я вижу корректную структуру после разархивирования а ведь сам редактор позволяет загрузить все эти файлы именно так
İyi günler, sevgili fxsaber! Lütfen bir sorunu çözmeme yardım edin. Scriptimde, harika MTTESTER kütüphanesinin yardımıyla geliştirdiğim bir arşiv fonksiyonu var. Aşağıdaki satırda Settin'i Tester klasörüne yazıyor: if(!kernel32::CopyFileW(SrcPath,DstPath,false)) // Files sanal alanından Tester klasörüne Settin'in üzerine yaz. "Arşivlemeden sonra" adında bir set elde ederiz. Ancak, görünüşe göre kodlama nedeniyle daha fazla yeniden çalışma için uygun değildir. Bununla birlikte, Strateji Test Cihazında robota manuel olarak yazarsanız ve ardından "Robota manuel olarak yazdıktan ve kaydettikten sonra" adıyla kaydederseniz, bu set zaten uygundur. Ve bu sadece başlığı değiştirme meselesi değil, başka bir şey. Demir adamlardan (Qwen, Deep Seek) yardım istedim ve bir "ReloadSetsFromCommonFixed" betiği oluşturdular. Birçok harika özelliği var ve şu satır dışında çalışıyor: if(!FileCopy(source_path, FILE_COMMON, dest_path, FILE_COMMON)) Set kopyalandı, ancak daha sonra doğrulama çıktısında çıktı, görünüşe göre kodlama nedeniyle abrakadabra. Demir 4 çözüm önerdi, ancak hiçbiri işe yaramadı (metinde hepsi var). Son umudum deri olanlar. Arşivleme işlevindeki şu satırı değiştirmenin bir yolu var mı: if(!kernel32::CopyFileW(SrcPath,DstPath,false)) robota elle yazmayı ve ardından gerekli biçimde kaydetmeyi simüle etmek için "Robota elle yazdıktan ve kaydettikten sonra"? Saygılarımla, Alexander
prRead0 = MTTESTER::GetSettings(Control); // Yeni yüklenen robot ayarlarını okur
doğru çalışır ve yürütüldükten sonra prRead0 = true olur.
Ancak Kontrol ağında prMFI=true, çünkü başlangıçta robota manuel olarak yüklenmiştir. Bu, prWrite0 = true yazma işaretine rağmen robota yazma işleminin aslında gerçekleşmediği anlamına gelir.
Orijinal ağda, prHEX=true
Robotun orijinal ağında prMFI=true
MTTESTER::SetSettings2(Ayarlar) komutu çalışıyor, ancak bu ayarlar robotta görünmüyor.
Kod aracılığıyla bir set dosyasını kaydedebilir(inLoad = false), ardındaniçindeki bir şeyi elle değiştirebilir ve kod aracılığıyla Tester'a yükleyebilirsiniz(inLoad = true).
Çalışırsa, kaynağın ilgili parçalarını kendiniz için alın.
MQL5.com web sitesine giriş yapmak için çerezlerin kullanımına izin vermelisiniz.
Lütfen tarayıcınızda gerekli ayarı etkinleştirin, aksi takdirde giriş yapamazsınız.
Hesabınıza giriş yaptınız. İki faktörlü kimlik doğrulama devre dışı bırakıldı. Yeniden kurup yeni bir QR kodu tarayın veya iki faktörlü kimlik doğrulama devre dışıyken devam edin.
Bazen fiyat geçmişinin bir kısmını tablo şeklinde görüntülemek gerekir. Bu, CTRL+U ile Çubuklar/Tickler sekmesi seçilerek yapılabilir. Gerekli aralığı oraya elle girmek. Bu sıkıcı bir işlemdir.
Bu nedenle, aşağıdaki Uzman Danışman tarafından gösterilen ek bir işlevsellik oluşturdum.
Grafiğin gerekli yerine tıklarsınız (CTRL basılıyken) ve ilgili tablo verilerini bir kerede otomatik olarak alırsınız.
Seçilen işlevler sadece belirli veri alanlarını doldurur ve sorgular. Ardından GUI aracılığıyla neyle ilgilendiğinizi görürsünüz. Genel olarak otomasyon.
5430 Bir görev hazırlanırken pencereler hala yanıp sönüyor.
Bunu nasıl düzeltebilirsiniz?
5430 Bir ödev hazırlanırken Windows hala yanıp sönüyor.
Bunu nasıl düzelteceksin?
Böylece.
Harika bir tema. Ama her şey ayrı ayrı hala yanıp sönmeden önce indirdim.
Bunu MultiTester_Example.mq5 dosyasında gördüm
MultiTester_Example.mq5 dosyasına satırlar eklendi.
Bu şekilde mi yorumladım yoksa farklı mı yapmalıyım? Ya da bu 4 satırın hepsini silebilir miyim?
Not: Bu satırlar olmadan eski görev listesini aldığımda titrediğini gördüm. Yeni satırlarla yanıp sönmüyor.
Ama sadece 1 satırı doğru yorumladım mı?
Bu harika bir tema. Ancak bundan önce indirdiğim her şey ayrı ayrı hala yanıp sönüyor.
Bunu MultiTester_Example.mq5 dosyasında gördüm
eklenen çizgiler
Bu şekilde mi yorumladım yoksa farklı mı yapmalıyım? Yoksa bu 4 satırı genel olarak silebilir miyim?
Not: Eski görev listesini bu satırlar olmadan aldığımda yanıp söndüğünü gördüm. Yeni hatlarda göz kırpmaz.
Ama sadece 1 satırı doğru yorumladım mı?
Arşivleme işlevinde bu satırı değiştirmenin bir yolu var mı
Buraya baktım (açılan pencerede adres çubuğunda ENTER tuşuna basın) ayarlanmış kayıt. Büyük olasılıkla bu bayraklara ihtiyaç vardır.
Bu bayraklar çok yardımcı oldu ve arşivleme sorunu çözüldü. Şimdi sonuç doğru formatta.
Çok teşekkür ederim!
Ancak Nocturne komut dosyamda komut düzgün çalışmıyor :
prWrite0 = MTTESTER::SetSettings2(Settings); // Ayarları robota yaz
Yürütüldükten sonra prWrite0 = true olmasına rağmen.
Muhtemelen klasörden Ayarlar setini okurken yine bir bayrak meselesidir.
Bu, şu satıra sahip olan GetKthFileContent işlevi tarafından yapılır:
int handle = FileOpen(full_path, FILE_READ | FILE_WRITE | FILE_UNICODE | FILE_TXT | FILE_COMMON);
Aşağıdaki satırın varyantları da çalışmaz:
// int handle = FileOpen(full_path, FILE_READ | FILE_TXT | FILE_COMMON); // Kaynak varyant satırı
// int handle = FileOpen(full_path, FILE_READ | FILE_UNICODE | FILE_TXT | FILE_COMMON);
Sonraki komut:
prRead0 = MTTESTER::GetSettings(Control); // Yeni yüklenen robot ayarlarını okur
doğru çalışır ve yürütüldükten sonra prRead0 = true olur.
Ancak Kontrol ağında prMFI=true, çünkü başlangıçta robota manuel olarak yüklenmiştir. Bu, prWrite0 = true yazma işaretine rağmen robota yazma işleminin aslında gerçekleşmediği anlamına gelir.
Orijinal ağda, prHEX=true
Robotun orijinal ağında prMFI=true
MTTESTER::SetSettings2(Ayarlar) komutu çalışıyor, ancak bu ayarlar robotta görünmüyor.
Buradaki sorun nedir?
Saygılarımla, Alexander
Peki buradaki sorun nedir?
Bayrakları incelemekle uğraşmadım ve Tester set dosyalarını kaydetmek ve yüklemek için çalışan bir kod yazmaya karar verdim.
Kod aracılığıyla bir set dosyasını kaydedebilir(inLoad = false), ardındaniçindeki bir şeyi elle değiştirebilir ve kod aracılığıyla Tester'a yükleyebilirsiniz(inLoad = true).
Çalışırsa, kaynağın ilgili parçalarını kendiniz için alın.