Kendinizi test cihazından uzun işlemleri kopyalamaktan nasıl korursunuz?

 

Hepiniz hoşgeldiniz.

Soru başlıkta. Görev, danışmanı gerçek veriler üzerinde kullanılmaktan korumak, ancak aynı zamanda strateji test cihazında çalışmasına izin vermektir. Böylece demo versiyonu strateji test cihazında başlatılabilir ve çalıştığını görebilir, ancak işlemleri manuel olarak başka bir terminale aktararak kopyalamak imkansız olurdu.

Sorun, EA işlemlerinin haftalarca sürebilmesidir. Bu, vicdansız bir kullanıcının, fazla stres olmadan, strateji test cihazında bir demo sürümünü çalıştırabileceği ve aynı fırsatları bir gün sonra başka bir terminalde elleriyle açabileceği anlamına gelir. Aynı zamanda, çok fazla kar kaybetmez.

Buna göre, test cihazındaki Expert Advisor'ın sadece mevcut olandan bir ay önceki tarihe kadar çalışması gerektiğine karar verildi. Aynı zamanda, yeni tarihler geldikçe, danışman test cihazında daha uzun ve daha uzun süre çalışmanıza izin vermelidir.

Test cihazında çalışmanın sonu için sabit kodlanmış bir tarih uygun değildir - kullanıcılar, bu tarihe kadar tekliflerin Uzman Danışmana kaydedildiğinden şüphelenmeye başlar, bu yüzden işlem yapar. Bu nedenle, test cihazında güncel tarihi almak ve EA'nın bir ay daha az tarihe kadar çalışmasına izin vermek gerekir.

Test cihazından güncel tarihi almak zordu, ancak mümkündü. Bununla birlikte, ortaya çıktığı gibi, bilgisayardaki zamanı ileri ayarlayan ve test cihazından tamamlanan işlemleri sakince okuyan kurnaz bir kullanıcı yakalandı.

Geçen ayki tekliflere dayalı olarak test cihazında başlatma nasıl önlenir?

Ne yapmayı öneriyorsunuz meslektaşlarım?

 
Daha fazlasını söyleyeceğim! WINAPI hakkında biraz bilgi sahibi olarak, test cihazındaki "başlat" düğmesine basacak bir yardımcı program yazabilir, raporu kaydedebilir ve oradan yeni fırsatları okuyabilirsiniz. Peki, o zaman terminaldeki işlemleri çoğaltın.
 

Evet, Dmitry, bu WinAPI olmadan bile sadece bir AutoIT betiği yardımıyla yapılabilir.

Aynı zamanda, sadece günlük işlem seanslarında çalışan Uzman Danışmanlar değil, beş dakikalık seanslarda çalışan Uzman Danışmanlar bile rahatsız olmaya başlar.

Bence en mantıklısı testçiyi mevcut tarihten bir ay önce durdurmak. Ama tarih bilgisayarda tercüme edildiğinde ne yapmalı?

Benim fikrim, bir şekilde test cihazından terminalden en son alıntıların gerçek zamanını almak. Ama nasıl yapacağımı bulana kadar. Ek olarak, kendi yazdığım ek DLL'lerle gerçekten uğraşmak istemiyorum, onlar da istemcileri "korkutuyor".

 
George Merts :

Evet, Dmitry, bu WinAPI olmadan bile sadece bir AutoIT betiği yardımıyla yapılabilir.

Aynı zamanda, sadece günlük işlem seanslarında çalışan Uzman Danışmanlar değil, beş dakikalık seanslarda çalışan Uzman Danışmanlar bile rahatsız olmaya başlar.

Bence en mantıklısı testçiyi mevcut tarihten bir ay önce durdurmak. Ama tarih bilgisayarda tercüme edildiğinde ne yapmalı?

Benim fikrim, bir şekilde test cihazından terminalden en son alıntıların gerçek zamanını almak. Ama nasıl yapacağımı bulana kadar. Ek olarak, kendi yazdığım ek DLL'lerle gerçekten uğraşmak istemiyorum, onlar da istemcileri "korkutuyor".

Terminaldeki tarih çevrilmez. TimeCurrent() en son sunucu saatini döndürür. ondan ve dans etmelisin.
 
Dmitiry Ananiev :
Terminaldeki tarih çevrilmedi. TimeCurrent() en son sunucu saatini döndürür. ondan ve dans etmelisin.

Yani, TimeCurrent() test cihazında simüle ediliyor... Yoksa bir şeyi mi kaçırıyorum? Sonuçta, test cihazından gerçek geçerli saati bulmanız gerekiyor.

Teorik olarak, bazı sunuculardan (kendi sunucunuz dahil) gerçek geçerli saati talep ederek WebRequest ile kafanız karışabilir. Ve strateji testi için gereklilik, terminalde bu sunucunun adresini girmek olacaktır.

 
Игорь Герасько :

Yani, TimeCurrent() test cihazında simüle ediliyor... Yoksa bir şeyi mi kaçırıyorum? Sonuçta, test cihazından gerçek geçerli saati bulmanız gerekiyor.

Test cihazından bilgisayarın geçerli saatini öğrenebilirsiniz.

Tek bir sorun var - kötü niyetli bir kullanıcı bunu büyük ölçüde değiştirebilir.

Teorik olarak, bazı sunuculardan (kendi sunucunuz dahil) gerçek geçerli saati talep ederek WebRequest ile kafanız karışabilir. Ve strateji testi için gereklilik, terminalde bu sunucunun adresini girmek olacaktır.

WebRequest, strateji test cihazında yürütülmez.
 

George Merts :

Bu nedenle, test cihazında güncel tarihi almak ve EA'nın bir ay daha az tarihe kadar çalışmasına izin vermek gerekir.

--

[]...Bilgisayardaki zamanı ileri ayarlayan ve test cihazından tamamlanan işlemleri sakince okuyan kurnaz bir kullanıcı tarafından yakalandım.

Yukarıda önerildiği gibi bir DLL veya WebRequest aracılığıyla üçüncü, bağımsız bir taraftan zaman alın. Başka seçenek yok, şüpheliyim.
 
Igor Konyashin :
Yukarıda belirtildiği gibi, bir DLL veya WebRequest aracılığıyla üçüncü, bağımsız bir taraftan zaman alın. Başka seçenek yok, şüpheliyim.
WebRequest, ortaya çıktığı gibi, strateji test cihazında uygulanamaz. Evet, çok üzücü, ama şimdiye kadar, kendi kendine yazılmış bir DLL dışında, ortaya çıkacak hiçbir şey yok...
 
George Merts :

Test cihazından bilgisayarın geçerli saatini öğrenebilirsiniz.

Tek bir sorun var - kötü niyetli bir kullanıcı bunu büyük ölçüde değiştirebilir.

Yani aynı şeyden bahsediyorum. Ancak TimeCurrent() , test cihazında da uygun değildir.
WebRequest, strateji test cihazında yürütülmez.
Bilmiyordum. Bilgi için teşekkürler.
 
Игорь Герасько :
Yani aynı şeyden bahsediyorum. Ancak TimeCurrent(), test cihazında da uygun değildir.
TimeCurrent() - sadece çalışmıyor, aynı zamanda bilgisayarın geçerli saatini değil , strateji test cihazının ayarlarına bağlı olan teklif zamanını da döndürür.
 
George Merts :
TimeCurrent() - sadece çalışmıyor, aynı zamanda bilgisayarın geçerli saatini değil , strateji test cihazının ayarlarına bağlı olan teklif zamanını da döndürür.
ve hangi ayarlar ve nereye eklenmeli? tamamen karıştırdığın bir şey. TimrCurrent() sunucu zamanı. Test cihazında bu, kenelerin sunucu saatine göre varış zamanıdır. Ne kadar baykuş yazsam da bilgisayarın yerel saatine bağlı kalmamış.
Neden: