zu 1)
Ich habe einen MT4 (online) der mir einen Offlinechart erstellt. z.B. 4 x M5 mit Period_Converter_Opt.mq4.
Dann habe ich einen zweiten MT4 (offline) der diesen Offlinechart anzeigt ... wie geht das denn!? ... ganz einfach das Historyverzeichnis des ersten MT, mittels MKLINK (Windowskommando) zum Verzeichnis des zweiten MT machen.
Jetzt kann ich im Submenü "Aktualisieren" auswählen oder das Script anbinden und mir das manuelle Aktualisieren. (Klappt. Mit den Vorschlägen noch besser)
Wenn ich diesen Codeschnipsel in einen Indikator reinschreibe, das geht nichts mehr und ich muß den MT-Prozess killen.
Code:
#property indicator_chart_window
#include <WinUser32.mqh>
#define CHART_CMD_UPDATE_DATA 33324
extern int updateZeit = 1000;
static int hwnd = 0;
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- indicators
hwnd = WindowHandle(Symbol(), Period());
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
//----
PostMessageA(hwnd,WM_COMMAND,CHART_CMD_UPDATE_DATA,0);
RefreshRates();
WindowRedraw();
//----
return(0);
}
Ich würde vielleicht selbst drauf kommen woran es liegt, aber es gibt keinen Anhaltspunkt/Fehlermeldung/Code oder so. Oder ich weiß einfach nur nicht wo ich gucken soll...