Abdul Manan : MT4'te EA kullanarak göstergeyi grafikten çıkarmak mümkün müdür? OnDenit() işlevinde bazı kodlar yazılabilir.
Belirtilen grafik penceresinden belirtilen ada sahip bir göstergeyi kaldırır. Komut, grafik mesaj kuyruğuna eklenir ve yalnızca önceki tüm komutlar işlendikten sonra yürütülür.
boolChartIndicatorDelete( uzunchart_id,// grafik kimliği intalt_pencere,// alt pencerenin numarası const dizegösterge_kısa isim// göstergenin kısa adı );
parametreler
chart_id
[içinde] Grafik Kimliği. 0, geçerli grafiği belirtir.
alt_pencere
[içinde] Grafik alt penceresinin numarası. 0, ana grafik alt penceresini belirtir.
Removes an indicator with a specified name from the specified chart window. The command is added to chart message queue and executed only after all previous commands have been processed. If the short name of an indicator is not set explicitly, then the name of the file containing the source code of the indicator will be specified during...
intOnInit()
{
//---// In my code where I launch the indicatorint hWnd=WindowHandle(Symbol(),0);
StartCustomIndicator(hWnd,INDICATOR_NAME);
return(INIT_SUCCEEDED);
}
This code work, but only in OnInit section. If i try transfer it to section CHARTEVENT_OBJECT_CLICK for launch with key, nothing happend. Can you help me ?
Bu konu benim için son derece yardımcı oldu ama beni tam olarak oraya götürmedi - buradaki diyalogun kaldığı yerden devam eden bu konuya (https://www.forexfactory.com/showthread.php?p=12764287#) bakın.
Georgiy Liashchenko'ya teşekkür etmek istiyorum ve göstergeyi doğrudan grafiğe ekleyen kodunun yükseltilmiş sürümünü AutomaticallyAcceptDefaults ("true" olduğunda) ile paylaşmak istiyorum .
Umarım uzmandan gösterge eklemesi gereken bazı insanlara yardımcı olur.
Not: Özel göstergeler için çalışıyorum, yoksa windows adını değiştirin
Not2 : 15'ten fazla karakter içeren göstergeler kullanmayın (".ex4"ten önce)
merhaba bunu aldım
'user32.dll::RegisterWindowMessageW' çağrılamıyor, 'user32.dll' yüklü değil
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.
Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum
MQL4 EA'dan grafiğe gösterge ekle
Alain Verleyen , 2016.02.13 11:39
Selam millet
yukarıdaki kod bir Uzmanda çalışır, Yukarıdaki kodları bir Göstergede nasıl kullanırım?
lütfen yardım et.
MT4'te EA kullanarak göstergeyi grafikten çıkarmak mümkün müdür? OnDenit() işlevinde bazı kodlar yazılabilir.
Belirtilen grafik penceresinden belirtilen ada sahip bir göstergeyi kaldırır. Komut, grafik mesaj kuyruğuna eklenir ve yalnızca önceki tüm komutlar işlendikten sonra yürütülür.
bool ChartIndicatorDelete (
uzun chart_id , // grafik kimliği
int alt_pencere , // alt pencerenin numarası
const dize gösterge_kısa isim // göstergenin kısa adı
);
parametreler
chart_id
[içinde] Grafik Kimliği. 0, geçerli grafiği belirtir.
alt_pencere
[içinde] Grafik alt penceresinin numarası. 0, ana grafik alt penceresini belirtir.
const gösterge_kısaad
[içinde] INDICATOR_SHORTNAME özelliğinde IndicatorSetString() işleviyle ayarlanan göstergenin kısa adı. Bir göstergenin kısa adını almak için ChartIndicatorName() işlevini kullanın.
Geri dönüş değeri
Komut grafik kuyruğuna eklendiyse true, aksi takdirde false döndürür. Hata ayrıntılarını almak için GetLastError() işlevini kullanın.
Herkese merhaba,
Georgiy Liashchenko'ya teşekkür etmek istiyorum ve göstergeyi doğrudan grafiğe ekleyen kodunun yükseltilmiş sürümünü AutomaticallyAcceptDefaults ("true" olduğunda) ile paylaşmak istiyorum .
Umarım uzmandan gösterge eklemesi gereken bazı insanlara yardımcı olur.
Not: Özel göstergeler için çalışıyorum, yoksa windows adını değiştirin
Not2 : 15'ten fazla karakter içeren göstergeler kullanmayın (".ex4"ten önce)
merhaba bunu aldım
'user32.dll::RegisterWindowMessageW' çağrılamıyor, 'user32.dll' yüklü değil
Biri bana yardım edebilir mi?
Bu problemim yok (gönderdiğim kodla).
hWnd'nin 0'dan farklı olduğunu kontrol edin.
Ayrıca uyku değerini 50 veya 100'e yükseltmeyi deneyebilirsiniz.
Sevgili Alain,
Tüm açık grafiklere bir gösterge eklemek için kodunuzu kullandım. ancak yalnızca EA'yı çalıştırdığım çizelgeye eklendi.
kod burada, aynı göstergeyi tüm açık grafiklere eklemek için lütfen kodunuzu değiştirebilir misiniz?
lütfen yardım et
BTW (EA ve script olarak denedim, ikisi de göstergeyi tek bir grafiğe ekledi) :)
Saygılarımızla,
#import "user32.dll"
int RegisterWindowMessageW(string İletiAdı);
int PostMessageW(int hwnd,int mesaj,int wparam,uchar &Ad[]);
#içe aktarmak
#define INDICATOR_NAME "CCI_FILTER6C"
int NOS ;
dize soneki="";
dizi sembolü[30];
uzun grafik[30];
//+------------------------------------------- -------------------+
//+------------------------------------------- -------------------+
//+------------------------------------------- -------------------+
int OnStart()
{
NOS=10;
sonek = "c";
sembol[0] = "AUDCAD" + sonek ;
sembol[1] = "AUDCHF" + sonek ;
sembol[2] = "AUDJPY" + sonek;
sembol[3] = "AUDNZD" + sonek;
sembol[4] = "AUDUSD" + sonek ;
sembol[5] = "CADJPY" + sonek ;
sembol[6] = "CHFJPY" + sonek;
sembol[7] = "EURAUD" + sonek ;
sembol[8] = "EURCAD" + sonek ;
sembol[9] = "EURCHF" + sonek;
for(int is=0;is<NOS;is++)
{
int hWnd=WindowHandle(sembol[is],PERIOD_M30);
StartCustomIndicator(hWnd,INDICATOR_NAME);
}
dönüş(0);
}
void StartCustomIndicator(int hWnd,string IndicatorName,bool AutomaticallyAcceptDefaults=true)
{
uchar adı2[];
StringToCharArray(GöstergeAdı,isim2,0,StringLen(GöstergeAdı));
int MessageNumber=RegisterWindowMessageW("MetaTrader4_Internal_Message");
int r=PostMessageW(hWnd,MessageNumber,15,name2);
Uyku(100);
}
Merhaba, aynı kodu kullanarak 1 EA'dan 2 gösterge yükleyemiyorum.
bunu da arıyorum - aynı EA'dan birden fazla göstergenin nasıl ekleneceğini çözen var mı?
aynı EA'dan 2 https://docs.mql4.com/indicators/ima eklemek istiyorum
Teşekkürler