Период EМА 10, значит нужно баров 100-150, а используется 60.
Dmitry Fedoseev:
Период EМА 10, значит нужно баров 100-150, а используется 60.
Получилось. Только, сколько для каждого периода добавлять баров? Для EMA вроде нужно, так же, как для SMA количество баров, то есть на первом значении+Period_.
Период EМА 10, значит нужно баров 100-150, а используется 60.
forexman77:
Получилось. Только, сколько для каждого периода добавлять баров? Для EMA вроде нужно, так же, как для SMA количество баров, то есть на первом значении+Period_.
Что получилось-то?
Получилось. Только, сколько для каждого периода добавлять баров? Для EMA вроде нужно, так же, как для SMA количество баров, то есть на первом значении+Period_.
Алексей Тарабанов:
Что получилось-то?
Что получилось-то?
На шестом знаке после ноля на копейки в начале и до середины расхождения есть небольшие.
#include <MovingAverages.mqh> //+------------------------------------------------------------------+ //| testMoving.mq5 | //| Copyright 2016, MetaQuotes Software Corp. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2016, MetaQuotes Software Corp." #property link "https://www.mql5.com" #property version "1.00" #property indicator_chart_window #property indicator_buffers 1 #property indicator_plots 1 //--- plot Label1 #property indicator_type1 DRAW_LINE #property indicator_color1 clrBlue #property indicator_style1 STYLE_SOLID input int Period_=10; double m[]; int BEGIN; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int OnInit() { //--- indicator buffers mapping SetIndexBuffer(0,m,INDICATOR_DATA); PlotIndexSetDouble(0,PLOT_EMPTY_VALUE,0); //--- 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[]) { //--- BEGIN=rates_total-(Period_+250); ExponentialMAOnBuffer(rates_total,prev_calculated,BEGIN,Period_,close,m); //--- return value of prev_calculated for next call return(rates_total); } //+------------------------------------------------------------------+
forexman77:
Ну, не верю я Вам, извините...
На шестом знаке после ноля на копейки в начале и до середины расхождения есть небольшие.
Алексей Тарабанов:
Ну, не верю я Вам, извините...
Проверить 10 секунд нужно. Поставьте из терминала скользящую EMA с периодом 120 и мою. Все увидите.
Ну, не верю я Вам, извините...
forexman77:
Проверить 10 секунд нужно. Поставьте из терминала скользящую EMA с периодом 120 и мою. Все увидите.
Проверить 10 секунд нужно. Поставьте из терминала скользящую EMA с периодом 120 и мою. Все увидите.
forexman77:
Получилось. Только, сколько для каждого периода добавлять баров? Для EMA вроде нужно, так же, как для SMA количество баров, то есть на первом значении+Period_.
Для EMA надо в 10-20 раз больше чем период. На малых период достаточно в 10 раз больше, а на больших до 20-и раз больше, кто знает может на очень больших еще больше надо.
Получилось. Только, сколько для каждого периода добавлять баров? Для EMA вроде нужно, так же, как для SMA количество баров, то есть на первом значении+Period_.
Dmitry Fedoseev:
Для EMA надо в 10-20 раз больше чем период. На малых период достаточно в 10 раз больше, а на больших до 20-и раз больше, кто знает может на очень больших еще больше надо.
Спасибо!
Для EMA надо в 10-20 раз больше чем период. На малых период достаточно в 10 раз больше, а на больших до 20-и раз больше, кто знает может на очень больших еще больше надо.
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Делаю индикатор для тестера, чтобы он рисовал по последним 50 барам, для увеличения скорости оптимизации.
На MQL4 делал проще с ограничением расчета. В цикле, если limit>Period+50, то limit= Period+50. В пятерке пока не знаю, как так сделать.
Сделал так, но на большом периоде значения расходятся с оригиналом:
Если правильно понимаю функцию "ExponentialMAOnBuffer", то третий параметр "BEGIN" это откуда рисовать линию.