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
Evet, ama kodlamanız gerekiyor.
Misal:
(GMT)
(GMT+1)
(GMT+2)
PERIOD_D1 kullanamazsınız çünkü
Bu nedenle, "gününüzü" istediğiniz gibi manuel olarak oluşturmak için iBarShift ve iHighest / iLowest (veya CopyHigh/CopyLow) ile H1 çubuklarını kullanmalısınız.
----
İşte noktayı gösterebilecek hızlı bir komut dosyası.
Bir grafiğe bırakın ve sunucu saatiyle 23:00'ten başlayarak bir 'gün' etrafında bir dikdörtgen çizdiğini göreceksiniz.
#property show_inputs
#define DAY 86400
#define HOUR 3600
extern int time_shift = - 1 ; // Hours to shift server time by
void OnStart ()
{
time_shift*=HOUR;
datetime oldest_bar = Time [ Bars - 1 ],
midnight = oldest_bar-(oldest_bar%DAY);
while (midnight<= TimeCurrent ())
{
datetime day_begin = midnight + time_shift,
day_end = day_begin + DAY - 1 ;
double high[],
low[];
int high_cnt = CopyHigh ( _Symbol , PERIOD_H1 , day_begin, day_end, high),
low_cnt = CopyLow ( _Symbol , PERIOD_H1 , day_begin, day_end, low);
if (high_cnt> 0 && low_cnt> 0 )
{
double day_high = high[ ArrayMaximum (high)],
day_low = low [ ArrayMinimum (low)];
string obj_name = TimeToString (day_begin, TIME_DATE );
ObjectCreate ( 0 , obj_name, OBJ_RECTANGLE , 0 , day_begin, day_high, day_end, day_low);
}
midnight+=DAY;
}
}
Evet, ama kodlamanız gerekiyor.
Bu örneği çalışmalıyım.
Çok teşekkürler.
Harika örneğiniz için bir kez daha çok teşekkürler.
Yorumunuzdan sonra sorunumu kolayca çözdüm.
---
Farklı brokerler için otomatik olarak ayarlanmış zaman ofseti için bir şey denedim, ne yazık ki bu işe yaramadı.
S: Farklı brokerler için otomatik zaman ofset setleri için bazı kodlar yazabilir miyim, bu mümkün mü?
(Hala bunun için bir şeyler deniyorum)
Çok teşekkürler.
Aşağıdaki kodu deniyorum ama bana doğru değeri vermiyor.
S: Aşağıdaki kodda yanlış olan nedir? (anlamadım)
Çok teşekkürler.
Aşağıdaki kodu deniyorum ama bana doğru değeri vermiyor.
S: Aşağıdaki kodda yanlış olan nedir? (anlamadım)
Çok teşekkürler.
Görünüşe göre tüm brokerler bunu doğru şekilde ayarlamamış. lütfen buraya bakın
Şans yok !
Sadece profesyonel programcıların ve kodların pes ettiğini mi düşünüyorum?! Tabii ki hayır . : / ( ama ben )
Çok teşekkürler.
(En azından deneyeceğime dair bir fikrim var - sonra)Şans yok !
Sadece profesyonel programcıların ve kodların pes ettiğini mi düşünüyorum?! Tabii ki hayır . : / ( ama ben )
Çok teşekkürler.
(En azından deneyeceğime dair bir fikrim var - sonra)Her zaman geçici çözümler vardır.
Örneğin, 1 çubuğun zaman aralığından daha büyük bir zaman aralığı arayan H1 veya M30 çubuklarından geriye gidebilirsiniz (yani piyasa bu aralıkta kapanmıştır).
Ancak hafta sonları ve resmi tatillere ve eksik tarihe dikkat etmeniz gerekiyor.
Her zaman geçici çözümler vardır.
Örneğin, 1 çubuğun zaman aralığından daha büyük bir zaman aralığı arayan H1 veya M30 çubuklarından geriye gidebilirsiniz (yani piyasa bu aralıkta kapanmıştır).
Ancak hafta sonları ve resmi tatillere ve eksik tarihe dikkat etmeniz gerekiyor.
Sadece tarih saatini öğrenmem gerekiyor, çünkü şimdiye kadar kodla ilgili tarih saati yazmaya çalıştığımda, kodların bu kısmına her zaman çok zaman harcadım. (Ben bile senaryolarımı başarıyla bitirdim ama hiçbir zaman daha net anlayamadım)
Şimdi, günün 1. çubuğunu (Günümüzdeki ilk çubuk 1m, 5m, 15m, 30m, 1h vb.) verileri almaya çalışıyorum, ancak yapamıyorum.
(Google chrome tarayıcısında bununla ilgili birçok sekmem var - sadece saçmalık)
O halde birisi bana günün ilk çubuğu (M1, 5M vb.) için nasıl kod yazacağımı örnekle ve açıklayarak yardımcı olabilir mi?
Elbette yarın bu endişeyi araştırmaya devam edeceğim.
şimdiden çok teşekkürler
Günün ilk çubuğu, TimeHour()'un saymaya başlamasından sonraki ilk çubuk olmalıdır.
Bu elbette M1, M5 , M15 vb. herhangi bir şeyin ilk çubuğu olacak, hepsi yeni çubuklar başlatıyor.