MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 1894 1...188718881889189018911892189318941895189618971898189919001901...1953 新しいコメント Alekseu Fedotov 2022.02.08 21:20 #18931 Vitaly Muzichenko #:動作しますが、手で設定できるインデントで、最低でも はい、ウィンドウの10%以下ではありません。 Vitaly Muzichenko 2022.02.08 21:21 #18932 Alekseu Fedotov #:はい、ウィンドウの10%以上です。 だから、悪い結果になるんです。 DanilaMactep 2022.02.09 09:25 #18933 皆さん、こんにちは。20個のツールを開いていて、すべてのツールに同じテンプレートをロードする必要があります。スクリプトで自動化することは可能でしょうか?もしそうなら、その方法のコードを教えていただけませんか? Maxim Kuznetsov 2022.02.09 09:36 #18934 DanilaMactep #:皆さん、こんにちは。20個のツールを開いていて、すべてのツールに同じテンプレートをロードする必要があります。スクリプトで自動化することは可能でしょうか?もしそうなら、それを行う方法のコードを共有してください? スクリプトを作成する - チャートを順番に見ていき ( ChartFirst(), ChartNext() ) 、必要なテンプレートを適用する ( ChartApplyTemplate() ) 。 こちらで確認できます :https://www.mql5.com/ru/blogs/post/747636 またはカスタマイズする Полезняшки - скрипт для открытия чартов www.mql5.com Небольшой скрипт, открывает недостающие пары и применяет туда шаблон Valeriy Yastremskiy 2022.02.09 13:39 #18935 DanilaMactep #:皆さん、こんにちは。20個のツールを開いていて、すべてのツールに同じテンプレートをロードする必要があります。スクリプトで自動化することは可能でしょうか?もしそうなら、それを行う方法をコードで教えていただけますか? デフォルトのテンプレートが記憶されます。そして、すべての新しいウィンドウは、デフォルトのテンプレートで開かれます。 Sergey Dymov 2022.02.09 21:48 #18936 Tretyakov Rostyslav #: コードを貼ってください。 5ページ分のコードがあるんですよ。みんな石を投げてくるよ、素人なんだから...。64,000文字以上と表示されているのですが。 ファイル: Robo_v3.4_indi.mq5 50 kb Vladimir Karputov 2022.02.10 04:44 #18937 Sergey Dymov #:5ページ分のコードがあるんですよ。みんな石を投げてくるよ、素人なんだから...。フォーラムでは64000文字以上と断言しています。 CopyXXXX' 関数で文字を指定する必要があります。 int copy_open=CopyOpen(Symbol(),PERIOD_M15,0,1,OpenPrice); if(copy_open<0) Print("Неудачная попытка копирования OpenPrice"); MatveySt 2022.02.10 12:35 #18938 Доброго времени суток! Помогите разобраться я новичок в програмировании, посмотрел ролик "Как написать индикатор" писал код с ведущим ,от кампилировал без ошибок, вывожу на терминал индикатор не отрисовывается, ошибок нет в окне он есть в списке запущиных индекаторовв тоже. Что я делаю не так? //+------------------------------------------------------------------+ //| MaOsC Уч.mq5 | //| Copyright 2022,Игорь | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2022,Игорь" #property link "https://www.mql5.com" #property version "1.00" #property indicator_separate_window //Выводить индикатор в отдельное окно #property indicator_buffers 4 #property indicator_plots 1 //Количество графических серий в индикаторе #property indicator_label1 "MAOS" #property indicator_type1 DRAW_COLOR_HISTOGRAM // Графическое построение цветная гистограмма #property indicator_color1 clrLightBlue,clrBlue,clrYellow,clrGold,clrDarkOrange #property indicator_style1 STYLE_SOLID //стиль линий для отрисовки #property indicator_width1 2 //толшина линий input uint MaFastPeriod = 7; input uint MaSlowPeriod = 33; input ENUM_MA_METHOD MaMethod = MODE_SMA; //метод МА input ENUM_APPLIED_PRICE MaAppliaedPrice = PRICE_CLOSE; double MAOSBuffer[]; //буфер если связан с ценой то тип double double ColorsBuffer[]; double FastBuffer[]; double SlowBuffer[]; int FastPeriod, // глобальные переменные SlowPeriod, fma_h, sma_h; // описатель (хэндл) индекатора,для того что-бы можно было обращаться к нему в дальнейшем //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int OnInit() { FastPeriod = int(MaFastPeriod < 1 ? 1 : MaFastPeriod); //описание действия (если MaFastPeriod меньше 1 то указываем 1 а если оно больше либо = 1 то указываем MaFastPeriod) SlowPeriod = int(MaSlowPeriod == MaFastPeriod ? FastPeriod + 1 : MaSlowPeriod < 1 ? 1 : MaSlowPeriod); // описание действия(если MaSlowPeriod = FastPeriod то в таком случае +1,а иначе если MaSlowPeriod меньше 1 то указываем 1 а если оно больше либо = 1 то указываем MaSlowPeriod) SetIndexBuffer(0, MAOSBuffer, INDICATOR_DATA); SetIndexBuffer(1, ColorsBuffer, INDICATOR_COLOR_INDEX); SetIndexBuffer(2, FastBuffer, INDICATOR_CALCULATIONS); SetIndexBuffer(3, SlowBuffer, INDICATOR_CALCULATIONS); ArraySetAsSeries(MAOSBuffer, true); ArraySetAsSeries(ColorsBuffer, true); ArraySetAsSeries(FastBuffer, true); ArraySetAsSeries(SlowBuffer, true); ResetLastError(); fma_h = iMA(NULL,PERIOD_CURRENT, FastPeriod, 0, MaMethod, MaAppliaedPrice); if (fma_h == INVALID_HANDLE) { Print("Не удалось инициализировать индикатор Moving Average"); return INIT_FAILED; } fma_h = iMA(NULL,PERIOD_CURRENT, SlowPeriod, 0, MaMethod, MaAppliaedPrice); if (sma_h == INVALID_HANDLE) { Print("Не удалось инициализировать индикатор Moving Average"); return INIT_FAILED; } return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int OnCalculate(const int rates_total, const int prev_calculated, const datetime &time[], const double &open[], const double &high[], const double &low[], const double &close[], const long &tick_volume[], const long &volume[], const int &spread[]) { if (rates_total < 4) return(0); //индикатор. проверку и расчёт количества прощитываемых баров(если rates_total меньше 4 баров то ни какого вычесления и отрисовки не делаем ) int limit = rates_total - prev_calculated; if (limit > 1) { limit = rates_total -2; ArrayInitialize(MAOSBuffer, 0); ArrayInitialize(ColorsBuffer, 4); ArrayInitialize(FastBuffer, 0); ArrayInitialize(SlowBuffer, 0); } int count =(limit > 1 ? rates_total : 1), copied = 0; copied = CopyBuffer(fma_h, 0, 0, count, FastBuffer); if (copied != count) return(0); copied = CopyBuffer(sma_h, 0, 0, count, SlowBuffer); if (copied != count) return(0); for(int i=limit; i>=0; i--) { MAOSBuffer[i] = FastBuffer[i] - SlowBuffer[i]; ColorsBuffer[i] = (MAOSBuffer[i] > 0 ? (MAOSBuffer[i] > MAOSBuffer[i=1] ? 0 : 1) : MAOSBuffer[i] < 0 ? (MAOSBuffer[i] < MAOSBuffer[i+1] ? 2: 3) : 4); } return(rates_total); } //+------------------------------------------------------------------+ ファイル: MaOsC_sv.mq5 11 kb MaOsC_dr.ex5 11 kb Tretyakov Rostyslav 2022.02.10 13:35 #18939 MatveySt #: 1) 両方ともsma_hであること fma_h = iMA(NULL,PERIOD_CURRENT, FastPeriod, 0, MaMethod, MaAppliaedPrice); if (fma_h == INVALID_HANDLE) { Print("Не удалось инициализировать индикатор Moving Average"); return INIT_FAILED; } fma_h = iMA(NULL,PERIOD_CURRENT, SlowPeriod, 0, MaMethod, MaAppliaedPrice); if (sma_h == INVALID_HANDLE) { Print("Не удалось инициализировать индикатор Moving Average"); return INIT_FAILED; } 2)"+"をつける for(int i=limit; i>=0; i--) { MAOSBuffer[i] = FastBuffer[i] - SlowBuffer[i]; ColorsBuffer[i] = (MAOSBuffer[i] > 0 ? (MAOSBuffer[i] > MAOSBuffer[i=1] ? 0 : 1) : MAOSBuffer[i] < 0 ? (MAOSBuffer[i] < MAOSBuffer[i+1] ? 2: 3) : 4); } MatveySt 2022.02.10 13:58 #18940 Tretyakov Rostyslav #:1) 両方ともsma_hであること2)"+"をつける ありがとうございます!!!すべてうまくいっている! 1...188718881889189018911892189318941895189618971898189919001901...1953 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
動作しますが、手で設定できるインデントで、最低でも
はい、ウィンドウの10%以下ではありません。
はい、ウィンドウの10%以上です。
だから、悪い結果になるんです。
皆さん、こんにちは。20個のツールを開いていて、すべてのツールに同じテンプレートをロードする必要があります。スクリプトで自動化することは可能でしょうか?もしそうなら、その方法のコードを教えていただけませんか?
皆さん、こんにちは。20個のツールを開いていて、すべてのツールに同じテンプレートをロードする必要があります。スクリプトで自動化することは可能でしょうか?もしそうなら、それを行う方法のコードを共有してください?
スクリプトを作成する - チャートを順番に見ていき ( ChartFirst(), ChartNext() ) 、必要なテンプレートを適用する ( ChartApplyTemplate() ) 。
こちらで確認できます :https://www.mql5.com/ru/blogs/post/747636 またはカスタマイズする
皆さん、こんにちは。20個のツールを開いていて、すべてのツールに同じテンプレートをロードする必要があります。スクリプトで自動化することは可能でしょうか?もしそうなら、それを行う方法をコードで教えていただけますか?
デフォルトのテンプレートが記憶されます。そして、すべての新しいウィンドウは、デフォルトのテンプレートで開かれます。
コードを貼ってください。
5ページ分のコードがあるんですよ。みんな石を投げてくるよ、素人なんだから...。64,000文字以上と表示されているのですが。
5ページ分のコードがあるんですよ。みんな石を投げてくるよ、素人なんだから...。フォーラムでは64000文字以上と断言しています。
CopyXXXX' 関数で文字を指定する必要があります。
1) 両方ともsma_hであること
2)"+"をつける
1) 両方ともsma_hであること
2)"+"をつける