Zaman ile ilgili sorunlar()

 
Merhaba MQL4 Topluluğu!

Bu benim ilk yazım. İlk olarak, lütfen ben bir MQL geliştiricisi değilim. EA'ları oluşturmama yardımcı olmak için bir araç kullanan bir Tüccarım. Bu araç, bazı MQL yapılarının kullanımına izin verir, ancak açık MQL işlevleri üzerinde çalışmaz. Yalnızca MQL kodunu alır, MQL tabanlı koşulun doğru/yanlış olup olmadığını değerlendirir ve ardından OpenBuy, OpenSell, CloseBuy, CloseSell, DeletePendingBuy, DeletePendingSell, vb. gibi özel bir işlevi yürütür. Ancak, MQL kodunu açıkça çalıştırmaz. Örneğin, MT4'ün grafik penceresinde bir şeyin görünmesini sağlamak için Yazdır veya Yorum işlevini kullanabilirsiniz (sadece bir örnek).

Dolayısıyla, MQL hakkında biraz bilgim var, bu da EA'larımı oluşturmak için kullandığım EA geliştirme aracını kullanmama yetecek kadar. Şimdiye kadar, aracı kullanarak 10 EA oluşturdum ve 7'sini, Excel'de ticari sistemler oluştururken elde ettiğim başarılı prototip oranımdan yaklaşık %30 daha iyi olan, kârlı olmaması nedeniyle terk ettim. Genelde, 10 fikirden 7-8'inin beklendiği kadar karlı olmayacağını ve optimizasyon sürecine başlamak için 2-3 tasarımın yeterince karlı olmasını bekliyorum. Tamam, benim ve nasıl yuvarlandığım hakkında bu kadar yeter.

İşte benim sorunum ve umarım yardım için doğru yere gelmişimdir!

İşlemleri kapatmak için [b] bu kodu çalıştırıyorum:[/b]

Gün() == 1 || Gün() == 2 || Gün() == 3 || Day() == 4 && TimeHour(TimeCurrent()) >=23 && TimeMinute(TimeCurrent()) >=57 || Day() == 5 && TimeHour(TimeCurrent()) >=21 && TimeMinute(TimeCurrent()) >=57

Not: Sorun, tüm işlemlerin Pazartesi'den Perşembe'ye 23:57'ye kadar açık kalmasıdır. Ayrıca, tüm işlemler Cuma günü 21:57'ye kadar açık kalır.


Ayrıca bu kodu, işlemleri açmak için bir MQL bloğu [b] üzerinden çalıştırıyorum:[/b]

TimeHour(TimeCurrent()) == 00 && TimeMinute(TimeCurrent()) <= 05

Not: 00:00 ile 00:05 arasında açılan tek işlem, Test Başlatma düğmesine tıklandığında geriye dönük testin ilk işlemidir. Bu ticaret tam olarak 00:00'da açılıyor. Ancak, diğer işlemlerin hiçbiri haftanın ilerleyen saatlerinde 00:00 ile 00:05 arasında açılmaz.

Özetle:

- 00:00'da Test Başlatma düğmesine tıkladıktan sonra bir işlem açılır.
- Hiçbir işlem daha sonra 23:57 (M-Per) veya 21:57 (Cum) saatlerinde kapatılmaz.
- Daha sonra 00:00 ile 00:05 arasında hiçbir işlem açılmaz.

Yukarıda gösterilen tüm zamanlar, bol miktarda kullanılabilir onay akışına sahiptir. Dolayısıyla, Tester tarafından kullanılan verilerde herhangi bir boşluk yoktu.

Herhangi bir yardım takdir edilecektir. Bu işlemler neden kodlanmış zamanda kapanmıyor? Pazartesiden Cumaya kadar 00:00 ile 00:05 arasında her zaman bir işlem sinyali varken neden hiçbir işlem gerçekleştirilmiyor?

Teşekkür ederim!
cfx
 

Neyin yürütülüp yürütülmediğini öğrenmek için kodunuza hangi hata ayıklama Print deyimlerini eklediniz? örneğin, OrderClose() başarısız mı yoksa OrderClose()'a yol açan kod mu? Dönüş değerlerini dikkate alıyor ve ilgili hataları yazdırıyor musunuz?

İşlev dönüş değerleri nelerdir? Onları nasıl kullanırım?

Day(), Strateji Test Cihazında düzgün çalışıyor mu? çalıştığını test etmek zorunda mısın? bunun yerine TimeDayOfWeek() kullanabilirsiniz. .

 

>Bu kodu [b]takasları kapatmak için çalıştırıyorum:[/b]

Day() == 1 || Day() == 2 || Day() == 3 || Day() == 4 && TimeHour ( TimeCurrent ()) >= 23 && TimeMinute ( TimeCurrent ()) >= 57 || Day() == 5 && TimeHour ( TimeCurrent ()) >= 21 && TimeMinute ( TimeCurrent ()) >= 57

>Not: Sorun, tüm işlemlerin Pazartesi'den Perşembe'ye 23:57'ye kadar açık kalmasıdır. Ayrıca, tüm işlemler Cuma günü 21:57'ye kadar açık kalır.

Bu, yeni başlayanlar arasında çok yaygın bir hatadır; tüm mantıksal ifadeyi tek bir satıra sığdırmaya çalışmak. Hata ayıklamak imkansız.

İşin püf noktası, testi küçük parçalara ayırmak ve her bir biti kontrol etmektir ( Print ifadeleriyle veya başka türlü).

Herhangi bir gün 23:57'den sonra kapatabilir misin? Bu testle haftanın günleri hakkında endişelenmenize gerek yok. Bir kez doğru şekilde çalışan bir test elde ettiğinizde daha maceracı olabilirsiniz. Ancak, hata ayıklama için aralarında Print deyimlerine izin vermek için mümkünse birkaç satır kullanın. Çalıştığında Print deyimlerini kaldırın, ancak kodu ayrı satırlarda bırakın. Kod aslında birçok satıra yazıldığında daha verimlidir (daha hızlı çalışır).

 
  1. Day() == 1 || Day() == 2 || Day() == 3 || Day() == 4 && TimeHour ( TimeCurrent ()) >= 23 && TimeMinute ( TimeCurrent ()) >= 57 || Day() == 5 && TimeHour ( TimeCurrent ()) >= 21 && TimeMinute ( TimeCurrent ()) >= 57
    bunlardan hangisini kastettin
    Day() == 1 || Day() == 2 || Day() == 3 || ( Day() == 4 && TimeHour ( TimeCurrent ()) >= 23 ) && TimeMinute ( TimeCurrent ()) >= 57 || Day() == 5 && TimeHour ( TimeCurrent ()) >= 21 && TimeMinute ( TimeCurrent ()) >= 57
     ( Day() == 1 || Day() == 2 || Day() == 3 || Day() == 4 ) && TimeHour ( TimeCurrent ()) >= 23 && TimeMinute ( TimeCurrent ()) >= 57 || Day() == 5 && TimeHour ( TimeCurrent ()) >= 21 && TimeMinute ( TimeCurrent ()) >= 57
    Her zaman tamamen parantez içinde veya basitleştir ve kendi kendine belgele
     #define HR2157 79020 // 21 * 3600 + 57 * 60
    #define HR2357 86220
    datetime now = TimeCurrent ();
    int       tod = now % 86400 ;
    bool      isFriday = TimeDayOfWeek (now) == 5 ;
    if (isFriday) int todClose = HR215700;
    else               todClose = HR235700
    if (now >= todClose) ...
    

  2. https://www.mql5.com/en/forum/127483 bildirildi DayOfWeek() test cihazında her zaman 5 döndürür, bu yüzden yalnızca Timexxx() sürümlerini kullanıyorum.
 
WHRoeder :
  1. bunlardan hangisini kastettin
OP açıkça Cuma hariç tüm hafta içi günleri VEYA anlamına gelir. Açıkça, işlem gününün bitiminden önce kapanışı zorlamaya çalışıyor, ancak Cuma daha kısa. Saat 23:57'den sonraysa her zaman kapatabileceğimiz için dört günün OR'sini kullanma testinin gereksiz olduğunu fark edemedi. Cuma'nın hariç tutulmasına gerek yok!
 
RaptorUK :

Neyin yürütülüp yürütülmediğini öğrenmek için kodunuza hangi hata ayıklama Print deyimlerini eklediniz? örneğin, OrderClose() başarısız mı yoksa OrderClose()'a yol açan kod mu? Dönüş değerlerini dikkate alıyor ve ilgili hataları yazdırıyor musunuz?

İşlev dönüş değerleri nelerdir? Onları nasıl kullanırım?

Day(), Strateji Test Cihazında düzgün çalışıyor mu? çalıştığını test etmek zorunda mısın? bunun yerine TimeDayOfWeek() kullanabilirsiniz. .


Böyle bir amaç için hiçbir Print deyimi kullanmadım. İlk mesajımda yazım hatası yaptım. Kullandığım araç [b]yapamaz[/b] (başlangıçta "can" yazdım) Yazdır veya Yorum gibi MQL işlevlerini kullanamaz. Bu nedenle, cevabınızı etkileyen yazım hatası için özür dilerim.

Ancak, Tester Journal'a kolayca bakabiliyorum ve EA'nın herhangi bir işlemi gerektiği zaman (00:00'da) hazırlamadığını ve olması gerektiği zaman (Pzt - Perş 23: 00'da) herhangi bir işlemin Kapanışını başlatmadığını görebiliyorum. 59 veya Cuma 21:57). Esasen, Tester çalışma zamanında EA yüklemesini, Demo Hesabı ile ilgili zorunlu bilgileri görebiliyorum ve son olarak, EA tarafından kullanılan gösterge(ler) için tüm Zaman Çerçevelerinin düzgün ve hatasız yüklendiğini görebiliyorum. Genellikle, EA'larımda herhangi bir tür hata almıyorum. Ayrıca, Çoklu Zaman Çerçevesi EA'larını her zaman rutin olarak test ediyorum.

Sadece Time() işleviyle ilgili bir sorunum var gibi görünüyor.

Açılan tek pozisyon, EA'nın Test Başlatıcısı Başlat düğmesine tıkladıktan SONRA gördüğü ilk işlem olduğundan, Day()'in çalışıp çalışmadığını Print'ten gelen çıktıdan veya Yorum. Ancak rastgele bir test olarak, Pazartesi - Cuma 00:00'da Pozisyon Açılışını kontrol eden kod bölümünden [b] TimeMinute(TimeCurrent()) <= 05 [/b] satırını kaldırdım. Bunu yaptığımda, aşağıdaki kod tasarlandığı gibi çalışmaya başladı:

Gün() == 1 || Gün() == 2 || Gün() == 3 || Day() == 4 && TimeHour(TimeCurrent()) >=23 && TimeMinute(TimeCurrent()) >=57 || Day() == 5 && TimeHour(TimeCurrent()) >=21 && TimeMinute(TimeCurrent()) >=57

Bu bana Day()'in gerçekten de tümdengelimle çalıştığını söylüyor. Aslında, pozisyonları Kapatan kodun tamamı işe yarıyor. Ancak, bazı nedenlerden dolayı, pozisyonların Açılışını kontrol eden kod segmentinde [b] TimeMinute(TimeCurrent()) <= 05 [/b] kullanıldığında değil. Bu ironi bana mantıklı gelmiyor - neden böyle olacağını anlayamıyorum.

Teşekkürler!

cfx

 
dabbler :

>Bu kodu [b]takasları kapatmak için çalıştırıyorum:[/b]

>Not: Sorun, tüm işlemlerin Pazartesi'den Perşembe'ye 23:57'ye kadar açık kalmasıdır. Ayrıca, tüm işlemler Cuma günü 21:57'ye kadar açık kalır.

Bu, yeni başlayanlar arasında çok yaygın bir hatadır; tüm mantıksal ifadeyi tek bir satıra sığdırmaya çalışmak. Hata ayıklamak imkansız.

İşin püf noktası, testi küçük parçalara ayırmak ve her bir biti kontrol etmektir ( Print ifadeleriyle veya başka türlü).

Herhangi bir gün 23:57'den sonra kapatabilir misin? Bu testle haftanın günleri hakkında endişelenmenize gerek yok. Bir kez doğru şekilde çalışan bir test elde ettiğinizde daha maceracı olabilirsiniz. Ancak, hata ayıklama için Print deyimlerine izin vermek için mümkünse birkaç satır kullanın. Çalıştığında Print deyimlerini kaldırın, ancak kodu ayrı satırlarda bırakın. Kod aslında birçok satıra yazıldığında daha verimlidir (daha hızlı çalışır).


Bu arada cevaplar için herkese teşekkürler!


Yakın Kontrol çalışır. [b] TimeMinute(TimeCurrent()) <= 05 [/b] öğesini Open Control'den kaldırdığımda, gerçekten işe yarıyor. Test Cihazı Başlat düğmesine tıkladıktan SONRA yürütülen ilk pozisyon, gerçekten de 23:57'de (Pzt-Perş) kapanıyor. O zaman sorun, Açık Kontrol'ün tasarım gereği gerektirdiği gibi, 00:00'da hiçbir yeni pozisyonun açılmadığı gerçeği haline gelir ( [b] TimeHour(TimeCurrent()) == 00 && TimeMinute(TimeCurrent()) <= 05 [/b]. [b] TimeMinute(TimeCurrent() <=5 [/b] işlevini yalnızca bir akıl sağlığı kontrolü olarak kaldırdığımda bile.

Kodu olabildiğince kompakt hale getirmenin en iyi alternatif olacağını düşündüm, ancak bunun işe yarayıp yaramadığını görmek için her işlevi, segmenti, bileşeni vb. genişletmeyi deneyeceğim.


Teşekkürler!

cfx

 
WHRoeder :
  1. bunlardan hangisini kastettin
    Her zaman tamamen parantez içinde veya basitleştir ve kendi kendine belgele
  2. https://www.mql5.com/en/forum/127483 bildirildi DayOfWeek() test cihazında her zaman 5 döndürür, bu yüzden yalnızca Timexxx() sürümlerini kullanıyorum.

Demek istedim:

 ( Day() == 1 || Day() == 2 || Day() == 3 || Day() == 4 ) && TimeHour ( TimeCurrent ()) >= 23 && TimeMinute ( TimeCurrent ()) >= 57 || Day() == 5 && TimeHour ( TimeCurrent ()) >= 21 && TimeMinute ( TimeCurrent ()) >= 57


Bu kod segmentinde eksik bir parantez var gibi görünüyor. Benim için düzeltebilirseniz, minnettar olurum. Kullandığım araç, bir paren eksik olduğunda bana haber veriyor, ancak bana nerede olduğunu söylemiyor.


Teşekkürler!

 
dabbler :
OP açıkça, Cuma hariç tüm hafta içi günleri VEYA anlamına gelir. Açıkça, işlem gününün bitiminden önce kapanışı zorlamaya çalışıyor, ancak Cuma daha kısa. Saat 23:57'den sonraysa her zaman kapatabileceğimiz için dört günün OR'sini kullanma testinin gereksiz olduğunu fark edemedi. Cuma'nın hariç tutulmasına gerek yok!

Cumayı ayırmam gerekiyor, yoksa Pazartesi - Perşembe kapanış saatleri ile Cuma kapanış saatleri arasında sıfır fark olacak. Her iki kapanış saati de, yalnızca meydana geldikleri Günün Saati ile değil, gerçekleştikleri Haftanın Günü ile ayırt edilir.

Bu yüzden sırasıyla Pazartesi - Perşembe 23:57 ve Cuma 21:57 kapatmam gerekiyor. Cuma kapanışını Pazartesi - Perşembe olarak dahil edersem, tüm işlemler EA tarafından görülen en erken saat olan 21:57'de, Pazartesi'den Perşembe'ye kadar gerekli kapanış saatlerinden tam iki saat önce kapatılacaktır.

Lütfen ifadenizi netleştirin. Teşekkürler!

cfx

 

ÇOK KOMİK!


MT4'teki "Zaman" tabanlı işlevlerin çoğunun ciddi şekilde kusurlu olduğunu düşünmeye başlıyorum.


Demek istediğim, tüm konum kontrol mantığımı şu kadar sıradan bir şeye sıfırlarsam: TimeHour(TimeCurrent()) == 23 && TimeHour(TimeCurrent()) == 59 ve hiçbir şekilde tek başına bir işlemi kapatamazsam (EA sadece kodu görmezden gelir!), o zaman MT4'ün bu tür işlevlerle ilgili olarak düzeltilmesi gereken bazı sorunları olduğunu söyleyebilirim.


Ayrıca aşağıdakileri kullanarak bir dizi test yaptım: DayOfWeek() != 0 && DayOfWeek() != ve Pazartesi'den Cuma'ya tek bir ticaret açılmayacaktı! Aslında, tek başına bir ticaret hiç açılmadı. Ancak, tüm Zaman tabanlı işlevleri tamamen kaldırdığımda EA'ya ne olduğunu düşünüyorsunuz? Tabii ki, hatasız olarak tasarlandığı gibi çalışır. MQL geliştiricisi değilim, ancak mantıksal yapılar geliştirmede gerçekten iyiyim ve bir sistemik sorunu sezdiğimde algılayabilirim. MetaQuotes'un Time() işlevleriyle ilgili bir sorunu olduğunu hissediyorum, nokta. Bu kadar kolay kodlanan bir şey hakkında bu kadar bilgisiz olamam ve MQL'de kod yazan başka insanların MT4'teki Zaman tabanlı işlevlerde zorluk çektiğini gördüm.

Sorunun tam olarak ne olduğunu bilmiyorum, ancak TimeMinute(TimeCurrent()) <= 05'i Açılış Kontrolü mantığından (tüm işlemlerin açılmasını kontrol eden kod parçası) kaldırdığımda ve SADECE ilk ticareti alıyorum doğru zamanda kapatmak için, yine de aynı Açılış Kontrolü mantığıyla yürütülen TÜM DİĞER işlemler, daha sonra EA tarafından özetle göz ardı edilir, o zaman işlevin kendisinde sistematik olarak bir şeylerin yanlış olduğunu biliyorum.

Kod daha basit olamaz! EA'ya lanet ticareti 00:00 ile 00:05 arasında açma talimatı veriyorum. Bu kodlaması zor bir şey değil. Altı yaşındaki bir çocuk bunu kodlayabilir. İşte yine burada: [b]TimeHour(TimeCurrent()) == 00 && TimeHour(TimeCurrent()) <= 05[/b].


Orası. Sadece kodladım. Daha sonra bu kodu kullandığım araca bırakıyorum ve araç bana Kodun Sözdiziminin Doğru olduğunu söylüyor! Tamam, şimdi ne? Lanet olası .ex4 dosyasını MİLYONuncu kez derledim ve M4 Tester'ı çalıştırdım. Tamam, şimdi ne? İLK ticaret 00:00'da başlıyor. Harika, değil mi? HAYIR! Niye ya? Çünkü Pazartesi günü 23:59'da lanet olası pozisyon HALA açık. Sonra ne? Pekala, bir sonraki işlem seansının 00:00'ında (bir sonraki D1 çubuğu), iyi ole [b]TimeHour(TimeCurrent()) == 00 && TimeHour(TimeCurrent()) <= 05[/b] geçecek Kapanış Kontrolü başarısız oldu, değil mi? Yanlış! Niye ya? Çünkü 00:00'dan 00:05'e kadar, EA tarafından hiçbir lanet olası ticaret açılmaz!!!

Bu basit kod üzerinde iki (2) gün geçirdim ve kimse bana neden işe yaramayacağını söyleyemedi - MQL uzmanları bile! Bu bana MetaQuotes'un bir sorunu olduğunu söylüyor.

Tamam, şimdi havalandırmayı bitirdim. Bu, iki günlük bastırılmış hayal kırıklığıydı ve onu serbest bırakmak zorunda kaldım.

EA'larla ASLA sorunum olmadı ve W1 ve MN hariç tüm zaman dilimlerini kullanarak oldukça karmaşık tasarımları bir araya getirebildim. Tüm EA'larım, sıfırdan oluşturduğum ve araştırdığım iCustom tasarımlarını kullanıyor .

Aniden, iyi yağlanmış ve iyi ayarlanmış bir V8 motoru gibi çalıştıktan sonra, Time() işlevlerini kullanmaya başladım ve her şey bitti mi? Bu konuda bir şeyler tam olarak doğru değil. Bu Zamana dayalı işlevleri mümkün olan en basit şekilde kullanıyorum ve hala çalışmıyorlar mı? Böyle bir şey için 48 saat harcamak benim için çok büyük bir zamandı. Hayal kırıklığına uğradım ve pes ettim, mümkünse "Zaman" olmadan yaşamaya çalışacağım.

Time() fonksiyonları etrafında ticaret mantığının nasıl geliştirileceğini öğrenmem gerekecek.

Gerçek dışı.

 

ÇOK KOMİK!


MT4'teki "Zaman" tabanlı işlevlerin çoğunun ciddi şekilde kusurlu olduğunu düşünmeye başlıyorum.


Demek istediğim, tüm konum kontrol mantığımı şu kadar sıradan bir şeye sıfırlarsam: TimeHour(TimeCurrent()) == 23 && TimeHour(TimeCurrent()) == 59 ve hiçbir şekilde tek başına bir işlemi kapatamazsam (EA sadece kodu görmezden gelir!), o zaman MT4'ün bu tür işlevlerle ilgili olarak düzeltilmesi gereken bazı sorunları olduğunu söyleyebilirim.


Ayrıca aşağıdakileri kullanarak bir dizi test yaptım: DayOfWeek() != 0 && DayOfWeek() != ve Pazartesi'den Cuma'ya tek bir ticaret açılmayacaktı! Aslında, tek başına bir ticaret hiç açılmadı. Ancak, tüm Zaman tabanlı işlevleri tamamen kaldırdığımda EA'ya ne olduğunu düşünüyorsunuz? Tabii ki, hatasız olarak tasarlandığı gibi çalışır. MQL geliştiricisi değilim, ancak mantıksal yapılar geliştirmede gerçekten iyiyim ve bir sistemik sorunu sezdiğimde algılayabilirim. MetaQuotes'un Time() işlevleriyle ilgili bir sorunu olduğunu hissediyorum, nokta. Bu kadar kolay kodlanan bir şey hakkında bu kadar bilgisiz olamam ve MQL'de kod yazan başka insanların MT4'teki Zaman tabanlı işlevlerde zorluk çektiğini gördüm.

Sorunun tam olarak ne olduğunu bilmiyorum, ancak TimeMinute(TimeCurrent()) <= 05'i Açılış Kontrolü mantığından (tüm işlemlerin açılmasını kontrol eden kod parçası) kaldırdığımda ve SADECE ilk ticareti alıyorum doğru zamanda kapatmak için, yine de aynı Açılış Kontrolü mantığıyla yürütülen TÜM DİĞER işlemler, daha sonra EA tarafından özetle göz ardı edilir, o zaman işlevin kendisinde sistematik olarak bir şeylerin yanlış olduğunu biliyorum.

Kod daha basit olamaz! EA'ya lanet ticareti 00:00 ile 00:05 arasında açma talimatı veriyorum. Bu kodlaması zor bir şey değil. Altı yaşındaki bir çocuk bunu kodlayabilir. İşte yine burada: [b] TimeHour(TimeCurrent()) == 00 && TimeHour(TimeCurrent()) <= 05 [/b].


Orası. Sadece kodladım. Daha sonra bu kodu kullandığım araca bırakıyorum ve araç bana Kodun Sözdiziminin Doğru olduğunu söylüyor! Tamam, şimdi ne? Lanet olası .ex4 dosyasını MİLYONuncu kez derledim ve M4 Tester'ı çalıştırdım. Tamam, şimdi ne? İLK ticaret 00:00'da başlıyor. Harika, değil mi? HAYIR! Niye ya? Çünkü Pazartesi günü 23:59'da lanet olası pozisyon HALA açık. Sonra ne? Pekala, bir sonraki işlem seansının 00:00'ında (bir sonraki D1 çubuğu), iyi ole [b]TimeHour(TimeCurrent()) == 00 && TimeHour(TimeCurrent()) <= 05[/b] geçecek Kapanış Kontrolü başarısız oldu, değil mi? Yanlış! Niye ya? Çünkü 00:00'dan 00:05'e kadar, EA tarafından hiçbir lanet olası ticaret açılmaz!!!

Bu basit kod üzerinde iki (2) gün geçirdim ve kimse bana neden işe yaramayacağını söyleyemedi - MQL uzmanları bile! Bu bana MetaQuotes'un bir sorunu olduğunu söylüyor.

Tamam, şimdi havalandırmayı bitirdim. Bu, iki günlük bastırılmış hayal kırıklığıydı ve onu serbest bırakmak zorunda kaldım.

EA'larla ASLA sorunum olmadı ve W1 ve MN hariç tüm zaman dilimlerini kullanarak oldukça karmaşık tasarımları bir araya getirebildim. Tüm EA'larım, sıfırdan oluşturduğum ve araştırdığım iCustom tasarımlarını kullanıyor.

Aniden, iyi yağlanmış ve iyi ayarlanmış bir V8 motoru gibi çalıştıktan sonra, Time() işlevlerini kullanmaya başladım ve her şey bitti mi? Bu konuda bir şeyler tam olarak doğru değil. Bu Zamana dayalı işlevleri mümkün olan en basit şekilde kullanıyorum ve hala çalışmıyorlar mı? Böyle bir şey için 48 saat harcamak benim için çok büyük bir zamandı. Hayal kırıklığına uğradım ve pes ettim, mümkünse "Zaman" olmadan yaşamaya çalışacağım.

Time() işlevleri etrafında ticaret mantığının nasıl geliştirileceğini öğrenmem gerekecek.

Gerçek dışı.

ÇOK KOMİK. Gerçek olmayan sensin. Bu kodunuz...

 if ( TimeHour ( TimeCurrent ()) == 00 && TimeHour ( TimeCurrent ()) <= 05 )

... asla doğruya dönmez.

"Kendi" mantıksal yapınızı daha da geliştirmesi gereken kişi sizsiniz.

Ve bunu inşa et...

 if ( TimeHour ( TimeCurrent ()) >= 00 && TimeHour ( TimeCurrent ()) <= 05 )