Во встроенной документации это описано, а примеры использования есть в стандартной поставке в каталоге /experts
double iMAOnArray( double array[], int total, int period, int ma_shift, int ma_method, int shift)
Calculates the Moving average counted on buffer and returns it's value.
Parameters
array[] - Array with data.
total - Items number to counting. 0 means whole array.
period - Number of periods for calculation.
ma_shift - MA shift
ma_method - MA method. It can be any one of the Moving Average method enumeration value.
shift - Shift relative to the current bar (number of periods back), where the data is to be taken from.
Sample
double macurrent=iMAOnArray(ExtBuffer,0,5,0,MODE_LWMA,0);
double macurrentslow=iMAOnArray(ExtBuffer,0,10,0,MODE_LWMA,0);
double maprev=iMAOnArray(ExtBuffer,0,5,0,MODE_LWMA,1);
double maprevslow=iMAOnArray(ExtBuffer,0,10,0,MODE_LWMA,1);
//----
if(maprev<maprevslow && macurrent>=macurrentslow)
Alert("crossing up");
Calculates the Moving average counted on buffer and returns it's value.
Parameters
array[] - Array with data.
total - Items number to counting. 0 means whole array.
period - Number of periods for calculation.
ma_shift - MA shift
ma_method - MA method. It can be any one of the Moving Average method enumeration value.
shift - Shift relative to the current bar (number of periods back), where the data is to be taken from.
Sample
double macurrent=iMAOnArray(ExtBuffer,0,5,0,MODE_LWMA,0);
double macurrentslow=iMAOnArray(ExtBuffer,0,10,0,MODE_LWMA,0);
double maprev=iMAOnArray(ExtBuffer,0,5,0,MODE_LWMA,1);
double maprevslow=iMAOnArray(ExtBuffer,0,10,0,MODE_LWMA,1);
//----
if(maprev<maprevslow && macurrent>=macurrentslow)
Alert("crossing up");
Renat
Спасибо, попробую.
Спасибо, попробую.
Renat
А можно ли в функции iMAOnArray использовать двумерный массв ?
А можно ли в функции iMAOnArray использовать двумерный массв ?
А можно ли в функции iMAOnArray использовать двумерный массв ?
нет
А как вообще MT4 работает с массивами ?
Насколько я понимаю при переходе на следующий бар в начало массива
добавляется новый элемент, а все бывшие сдвигаютсся на единицу вперед.
Это происходит со всеми объявленными массивами или только с
какими-то конкретными ?
Такой сдвиг - очень удобный инструмент. Могу ли я такой сдвиг делать
в моем вспомогательном массиве не при переходе на новый бар, а по
другому событию. Например по приходу новой котировки ?
Можно ли ограничить длину массива так, чтобы при таком сдвиге самый
старый элемент терялся и число элементов в массиве не менялось ?
Насколько я понимаю при переходе на следующий бар в начало массива
добавляется новый элемент, а все бывшие сдвигаютсся на единицу вперед.
Это происходит со всеми объявленными массивами или только с
какими-то конкретными ?
Такой сдвиг - очень удобный инструмент. Могу ли я такой сдвиг делать
в моем вспомогательном массиве не при переходе на новый бар, а по
другому событию. Например по приходу новой котировки ?
Можно ли ограничить длину массива так, чтобы при таком сдвиге самый
старый элемент терялся и число элементов в массиве не менялось ?
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Я пишу свой индикатор, значение которого нужно как в Метастоке передать МА в виде входного значения.
Можно ли это сделать? Как?
В RTFM ничего не сказано.