[ARŞİV!] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 4. - sayfa 252 1...245246247248249250251252253254255256257258259...633 Yeni yorum Vadim Zhunko 2012.07.14 18:19 #2511 Dimka-novitsek : Derler ancak çalışmaz. Baktı. ServiceRefreshChart () işlevi sizin için kullanılamaz. Hangi seçenek çalışmıyor? Ve bu zaten çok fazla. Bir komut dosyası ve ayrı bir grafik içeren seçenek her zaman çalışacaktır. 1. Bir grafik açın, örneğin EURUSD H1. 2. Komut dosyasında: void start() { int hwndChart = WindowHandle ( "EURUSD" , PERIOD_H1 ); while (! IsStopped ()) { for ( int i = 0 ; i < 9 && ! IsStopped (); i++) { ServiceSetTimeframeByNumber(hwndChart, i); Sleep ( 4000 ); } } } 3. Komut dosyasını başka bir grafikte çalıştırın. 4. EURUSD H1 grafiği TF'yi değiştirecek. Hatalar, hatalar, sorular Forumu kirletmemek için herhangi MQL4 ve MQL5 ile Dimka-novitsek 2012.07.14 18:37 #2512 Teşekkür ederim! Dimka-novitsek 2012.07.14 19:11 #2513 Senaryoyu grafiğe sürüklerim, hem danışmanın takıldığı yerde hem de diğerinde hiçbir şey olmaz. İlk defa bir script kullanıyorum. Öyle görünüyor. //+------------------------------------------------------------------+ //| таймфрейм .mq4 | //| Copyright 2012, MetaQuotes Software Corp. | //| http://www.metaquotes.net | //+------------------------------------------------------------------+ #property copyright "Copyright 2012, MetaQuotes Software Corp." #property link "http://www.metaquotes.net" #include <ServicesMT4.mqh> void start() { int hwndChart = WindowHandle ( "EURUSD" , PERIOD_H1 ); while (! IsStopped ()) { for ( int i = 0 ; i < 9 && ! IsStopped (); i++) { ServiceSetTimeframeByNumber(hwndChart, i); Sleep ( 4000 ); } } } //+------------------------------------------------------------------+ //| script program start function | //+------------------------------------------------------------------+ Danışman yani. //+------------------------------------------------------------------+ //| таймфрейммм.mq4 | //| Copyright 2012, MetaQuotes Software Corp. | //| http://www.metaquotes.net | //+------------------------------------------------------------------+ #property copyright "Copyright 2012, MetaQuotes Software Corp." #property link "http://www.metaquotes.net" #include <ServicesMT4.mqh> void start() { int hwndChart = WindowHandle ( Symbol (), Period ()); while (! IsStopped ()) { for ( int i = 0 ; i < 9 ; i++) { ServiceSetTimeframeByNumber(hwndChart, i); Sleep ( 4000 ); } } } //+------------------------------------------------------------------+ //| expert initialization function | //+------------------------------------------------------------------+ int init() { //---- //---- return ( 0 ); } //+------------------------------------------------------------------+ //| expert deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- //---- return ( 0 ); } //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ ve sırasıyla bir seçenek olarak //+------------------------------------------------------------------+ //| таймфреймммм.mq4 | //| Copyright 2012, MetaQuotes Software Corp. | //| http://www.metaquotes.net | //+------------------------------------------------------------------+ #property copyright "Copyright 2012, MetaQuotes Software Corp." #property link "http://www.metaquotes.net" #include <ServicesMT4.mqh> int hwndChart = NULL ; void init() { hwndChart = WindowHandle ( Symbol (), Period ()); // Получаем системный дескриптор графика. ServiceRefreshChart(hwndChart, 1000 ); // Запускаем обновление графика каждую 1 секунду. } void start() { ServiceStopRefreshChart(hwndChart); // Останавливаем обновление. Больше не требуется. while (! IsStopped ()) { for ( int i = 0 ; i < 9 ; i++) { ServiceSetTimeframeByNumber(hwndChart, i); Sleep ( 4000 ); } } } //+------------------------------------------------------------------+ //| expert initialization function | //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //| expert deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- //---- return ( 0 ); } //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ Vadim Zhunko 2012.07.14 22:57 #2514 Bu komut dosyası benim için çalışıyor: #include <ServicesMT4.mqh> void start() { int hwndChart = WindowHandle ( "EURUSD" , PERIOD_H1 ); while (! IsStopped ()) { for ( int i = 0 ; i < 9 && ! IsStopped (); i++) { ServiceSetTimeframeByNumber(hwndChart, i); Sleep ( 4000 ); } } } Bu Uzman Danışman garip bir şekilde çalışıyor. İşe yaramadığını söyleyebilirsin. Kendi başına, TF yalnızca M5'e kadar geçiş yapar. #include <ServicesMT4.mqh> int hwndChart = NULL ; void init() { if ( UninitializeReason () != REASON_CHARTCHANGE ) hwndChart = WindowHandle ( Symbol (), Period ()); // Получаем системный дескриптор графика. ServiceRefreshChart(hwndChart, 1000 ); // Запускаем обновление графика каждую 1 секунду. } void start() { ServiceStopRefreshChart(hwndChart); // Останавливаем обновление. Больше не требуется. while (! IsStopped ()) { for ( int i = 0 ; i < 9 ; i++) { ServiceSetTimeframeByNumber(hwndChart, i); Sleep ( 4000 ); } } } Doğal tikleri bekleyeceğim. Sorunun nereden geldiği belli değil. Yeni MT4 yapılarında bir şeyler değişti. Рустам 2012.07.15 01:23 #2515 Zhunko : Bu komut dosyası benim için çalışıyor: Bu Uzman Danışman garip bir şekilde çalışıyor. İşe yaramadığını söyleyebilirsin. Kendi başına, TF yalnızca M5'e kadar geçiş yapar. Doğal tikleri bekleyeceğim. Sorunun nereden geldiği belli değil. Yeni MT4 yapılarında bir şeyler değişti. Bu doğru, neden sürekli buggy olan ve kullanılamayacak kadar çok yazılıma ihtiyacımız var? Standart özellikleri kullanın ve her şey yoluna girecek. Endeksi çizelgeye atın ve keneler yerine manuel olarak güncelleyin. Ayarlarda DLL'yi etkinleştirmeyi unutmayın. //+------------------------------------------------------------------+ //| таймфрейм.mq4 | //| Copyright 2012, MetaQuotes Software Corp. | //| http://www.metaquotes.net | //+------------------------------------------------------------------+ #property copyright "Copyright 2012, MetaQuotes Software Corp." #property link "http://www.metaquotes.net" #property indicator_chart_window #import "user32.dll" int PostMessageA( int hWnd, int Msg, int wParam, string lParam); #import #define WM_COMMAND 0x0111 int delimiter = 0 ; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- indicators //---- return ( 0 ); } //+------------------------------------------------------------------+ //| Custom indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- //---- return ( 0 ); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { //return; int counted_bars= IndicatorCounted (); //---- if (delimiter< 3 ){delimiter++; Comment (delimiter); return ( 0 );} delimiter= 0 ; fChangePeriod(); //---- return ( 0 ); } //+------------------------------------------------------------------+ void fChangePeriod(){ int ii,hwd = WindowHandle ( Symbol (), Period ()); switch ( Period ()){ case PERIOD_W1 : ii = 33134 ; break ; //PERIOD_D1; case PERIOD_D1 : ii = 33136 ; break ; //PERIOD_H4; case PERIOD_H4 : ii = 33135 ; break ; //PERIOD_H1; case PERIOD_H1 : ii = 33140 ; break ; //PERIOD_M30; case PERIOD_M30 : ii = 33139 ; break ; //PERIOD_M15; case PERIOD_M15 : ii = 33138 ; break ; //PERIOD_M5; case PERIOD_M5 : ii = 33137 ; break ; //PERIOD_M1; case PERIOD_M1 : ii = 33141 ; break ; //PERIOD_W1; } PostMessageA(hwd, WM_COMMAND, ii, 0 ); return ; } Gösterge olarak demo hesabı. Bill Williams ve stratejileri... Ticarette makine öğrenimi: teori, Евгений 2012.07.15 05:47 #2516 //+------------------------------------------------------------------+ // Скрипт для переключ таймфрейма. // Для работы скрипта необходимо разрешить вызов функций из системных DLL: // Сервис -> Настройки -> Советники -> Разрешить импорт DLL. #property show_inputs #import "user32.dll" int PostMessageA(int hWnd,int Msg,int wParam,int lParam); void keybd_event(int bVk,int bScan,int dwFlags,int dwExtraInfo); #import #define WM_COMMAND 0x0111 extern int Per=5; //+------------------------------------------------------------------+ int start() {int wParam,hWnd=WindowHandle(Symbol(),Period()); switch(Per) {case PERIOD_M1: wParam=33137;break; case PERIOD_M5: wParam=33138;break; case PERIOD_M15:wParam=33139;break; case PERIOD_M30:wParam=33140;break; case PERIOD_H1: wParam=33135;break; case PERIOD_H4: wParam=33136;break; case PERIOD_D1: wParam=33134;break; case PERIOD_W1: wParam=33141;break; case PERIOD_MN1:wParam=33334;break;} PostMessageA(hWnd,WM_COMMAND,wParam,0); keybd_event(0xD,0,0,0);keybd_event(0x23,0,0,0);return(0);} //+------------------------------------------------------------------+ Vadim Zhunko 2012.07.15 10:42 #2517 FAQ : Doğru, neden sürekli buggy olan bir yazılıma ihtiyacımız var ki kullanılamıyor? Standart özellikleri kullanın ve her şey yoluna girecek. Endeksi çizelgeye atın ve keneler yerine manuel olarak güncelleyin. Ayarlarda DLL'yi etkinleştirmeyi unutmayın. Gerçekler neler? Ya şaka yapıyor olsaydım? Kontrol bile edemiyorsun. Belirli nitelikler gereklidir. PostMessage () ile ve her şey benim için çalışıyor. Sadece bu yanlış. SendMessage() ile yapmayı deneyin. Umarım farkı biliyorsundur. Rüstem, herkes en basit yazılımla başa çıkamaz. Şanssızdın. Bazı işletim sistemi bile buggy. Yatırımcılar aranıyor. OpenCL: MQL5'te dahili uygulama robot oluşturmak Dimka-novitsek 2012.07.15 12:27 #2518 Teşekkürler!!!!!!! Dimka-novitsek 2012.07.15 12:44 #2519 Senaryo çalışıyor!!!!! Ancak yalnızca M5'e geçer. Виктор 2012.07.15 13:49 #2520 Dimka-novitsek : Senaryo çalışıyor!!!!! Hangi? 1...245246247248249250251252253254255256257258259...633 Yeni yorum
Derler ancak çalışmaz.
Baktı. ServiceRefreshChart () işlevi sizin için kullanılamaz.
Hangi seçenek çalışmıyor? Ve bu zaten çok fazla. Bir komut dosyası ve ayrı bir grafik içeren seçenek her zaman çalışacaktır.
1. Bir grafik açın, örneğin EURUSD H1.
2. Komut dosyasında:
3. Komut dosyasını başka bir grafikte çalıştırın.
4. EURUSD H1 grafiği TF'yi değiştirecek.
Bu komut dosyası benim için çalışıyor:
Bu Uzman Danışman garip bir şekilde çalışıyor. İşe yaramadığını söyleyebilirsin. Kendi başına, TF yalnızca M5'e kadar geçiş yapar.
Doğal tikleri bekleyeceğim. Sorunun nereden geldiği belli değil. Yeni MT4 yapılarında bir şeyler değişti.Bu komut dosyası benim için çalışıyor:
Bu Uzman Danışman garip bir şekilde çalışıyor. İşe yaramadığını söyleyebilirsin. Kendi başına, TF yalnızca M5'e kadar geçiş yapar.
Doğal tikleri bekleyeceğim. Sorunun nereden geldiği belli değil. Yeni MT4 yapılarında bir şeyler değişti.Bu doğru, neden sürekli buggy olan ve kullanılamayacak kadar çok yazılıma ihtiyacımız var?
Standart özellikleri kullanın ve her şey yoluna girecek.
Endeksi çizelgeye atın ve keneler yerine manuel olarak güncelleyin.
Ayarlarda DLL'yi etkinleştirmeyi unutmayın.
Doğru, neden sürekli buggy olan bir yazılıma ihtiyacımız var ki kullanılamıyor?
Standart özellikleri kullanın ve her şey yoluna girecek.
Endeksi çizelgeye atın ve keneler yerine manuel olarak güncelleyin.
Ayarlarda DLL'yi etkinleştirmeyi unutmayın.
Gerçekler neler? Ya şaka yapıyor olsaydım? Kontrol bile edemiyorsun. Belirli nitelikler gereklidir.
PostMessage () ile ve her şey benim için çalışıyor. Sadece bu yanlış. SendMessage() ile yapmayı deneyin. Umarım farkı biliyorsundur.
Rüstem, herkes en basit yazılımla başa çıkamaz. Şanssızdın. Bazı işletim sistemi bile buggy.
Senaryo çalışıyor!!!!!
Ancak yalnızca M5'e geçer.
Senaryo çalışıyor!!!!!