← К каталогу
Исходный код · ID 3219

MA_Crossover_Histogram

ma_crossover_histogram.mq5
Вы автор или правообладатель?

Сообщите нам, если считаете, что материал размещён без разрешения.

Краткий обзор

О программе

MA_Crossover_Histogram — это пользовательский индикатор для MetaTrader 5, отображаемый в отдельном окне. Он рассчитывает два скользящих средних линейно-взвешенных (LWMA) с одинаковым периодом, но с разным сдвигом по барам, сравнивает их значения и визуализирует результат сравнения в виде гистограмм четырьмя буферами.

При значении «задней» линии (сдвинутая назад на период баров) больше «передней» линии отрисовываются гистограммы в буферах 1 и 2, при обратном соотношении — в буферах 3 и 4. Для фиктивных баров справа от текущей даты значения пересчитываются при каждом новом баре, что обеспечивает перерисовку индикатора.

В настройках задаётся период скользящей средней и правый сдвиг передней линии. Внутренний расчёт корректирует правый сдвиг на величину лага, вычисляемую как (period-1)/3. Индикатор не содержит торговой логики и работает исключительно как аналитический инструмент визуализации.

Настройки программы

НастройкаОписание
period Период скользящего среднего линейно-взвешенного (LWMA). Используется как для расчёта «задней» линии (со сдвигом назад на указанное число баров), так и для определения лага коррекции правого сдвига.
Right_Shift Правый сдвиг передней линии скользящего среднего. Определяет смещение относительно текущего бара для расчёта «переднего» значения LWMA. Внутренне корректируется на величину лага при инициализации.
Получить полный код

Поиск по коду файла

#property indicator_separate_window

#property indicator_buffers	4

#property indicator_color1	DodgerBlue
#property indicator_style1	STYLE_SOLID
#property indicator_width1	4

#property indicator_color2	Red
#property indicator_style2	STYLE_SOLID
#property indicator_width2	4

#property indicator_color3	Navy
#property indicator_style3	STYLE_SOLID
#property indicator_width3	4

#property indicator_color4	Maroon
#property indicator_style4	STYLE_SOLID
#property indicator_width4	4

extern int		period		= 10;
extern int		Right_Shift	= 4;

double ExtMapBuffer1[];
double ExtMapBuffer2[];
double ExtMapBuffer3[];
double ExtMapBuffer4[];

int BarNumber;
int BarIndex;

int init() {
      // код доступен только после оплаты
   }

int deinit() {
	return(0);
}

int start() {
      // код доступен только после оплаты
   }
	BarNumber = IndicatorCounted();	// [0 .. Bars]

	/*	'BarNumber' is the number of the LAST fake bar - the one that last time had index 0
		MT4 documentation states that the last bar is always considered NOT updated.
		So the 'BarNumber' may point to NEXT to LAST bar. However, there are different
		confusing scenarios around that, so it is safer to recalculate 1 more bar, potentially.
	*/

	int fakeBars		= period - Right_Shift;
	int firstFakeNumber	= BarNumber - fakeBars - 1;

	BarNumber = firstFake

Показано первые 50% кода (символов: 2672)

Открыть по тарифу

Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.

Разовая покупка файла

На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.

Чтобы оформить заказ, введите email и перейдите к оплате.

Стоимость полного кода
267,20₽ ≈ $3.27