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

StdScore

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

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

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

О программе

StdScore — это пользовательский индикатор для MetaTrader 4, отображающий аналитическое значение в отдельном подокне графика. Индикатор рассчитывает скользящую среднюю и стандартное отклонение для выбранного инструмента и таймфрейма, нормализует цены и визуализирует результат в виде линии или свечных/гистограммных элементов.

Индикатор поддерживает несколько вариантов применяемой цены (Close, Open, High, Low, Median, Typical, Weighted) и позволяет выбрать тип отображения: линия, столбцы или свечи. Доступен режим инверсии значений, а также анализ отдельного символа вместо текущего.

Внешний вид настраивается через цвета для бычьих и медвежьих элементов, фоновый цвет, ширину тел и сдвиг. Индикатор автоматически подстраивает ширину тел под масштаб графика и адаптирует фоновый цвет к настройкам терминала. Поддерживается ограничение максимального количества отображаемых баров.

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

НастройкаОписание
Period (N) Period — Период расчёта скользящей средней и стандартного отклонения.
Symbol (Sym) Symbol — Символ для анализа. Пустая строка означает текущий символ графика.
Reverse (Reverse) Reverse — Переключатель инверсии значений индикатора.
Applied price (AppliedPrice) Applied price — Тип применяемой цены для расчёта основного аналитического значения.
Value and line applied price (ValuePrice) Value and line applied price — Тип цены, используемый для отображения значения и линии.
Chart type (ChartType) Chart type — Тип визуализации индикатора: линия, столбцы или свечи.
Bull color (BullColor) Bull color — Цвет отображения бычьих элементов.
Bear color (BearColor) Bear color — Цвет отображения медвежьих элементов.
Background color (None=auto) (BackColor) Background color — Цвет фона индикатора. При значении None цвет подбирается автоматически по фону графика.
Body width (0=auto) (BodyWidth) Body width — Ширина тел элементов. При значении 0 ширина определяется автоматически по масштабу графика.
Maximum bars (MaxBars) Maximum bars — Максимальное количество отображаемых баров. При значении 0 ограничение не применяется.
Shift (Shift) Shift — Сдвиг индикатора в барах.
Получить полный код

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

#property strict

#property indicator_separate_window
#property indicator_buffers 11            // The first buffer is for the value, other 10 are for candle drawing
#property indicator_color1  clrRoyalBlue  // Value
#property indicator_color2  clrLimeGreen  // BullBody
#property indicator_color3  clrLimeGreen  // BullBody2
#property indicator_color4  clrRed        // BearBody
#property indicator_color5  clrRed        // BearBody2
#property indicator_color6  clrNONE       // BodyMask
#property indicator_color7  clrLimeGreen  // BullShadow
#property indicator_color8  clrLimeGreen  // BullShadow2
#property indicator_color9  clrRed        // BearShadow
#property indicator_color10 clrRed        // BearShadow2
#property indicator_color11 clrNONE       // ShadowMask

#property indicator_width1 1

#property indicator_levelcolor Gray
#property indicator_levelstyle STYLE_DOT

#property indicator_level1 2
#property indicator_level2 0
#property indicator_level3 -2

#property indicator_minimum -4
#property indicator_maximum 4

#define COLOR_IS_NONE(C) (((C) >> 24) != 0)

enum ENUM_CHART_TYPE
{
	CHART_TYPE_LINE = 0,                            // Line
	CHART_TYPE_BAR = 1,                             // Bar
	CHART_TYPE_CANDLESTICK = 2                      // Candlestick
};

input int N = 20;                                          // Period
input string Sym = "";                                     // Symbol
input bool Reverse = false;                                // Reverse
input ENUM_APPLIED_PRICE AppliedPrice = PRICE_MEDIAN;      // Applied price
input ENUM_APPLIED_PRICE ValuePrice = PRICE_CLOSE;         // Value and line applied price

input ENUM_CHART_TYPE ChartType = CHART_TYPE_CANDLESTICK;  // Chart type
input color BullColor = clrRoyalBlue;                      // Bull color
input color BearColor = clrCrimson;                        // Bear color
input color BackColor = clrNONE;                           // Background color (None=auto)
input int BodyWidth = 0;                                   // Body width (0=auto)

input int MaxBars = 0;                                     // Maximum bars
input int Shift = 0;                                       // Shift

double Value[], BullBody[], BullBody2[], BearBody[], BearBody2[], BodyMask[], BullShadow[], BullShadow2[], BearShadow[], BearShadow2[], ShadowMask[];

datetime _lastTickTime = 0;
int _bodyWidth = 2;
color _bgColor = clrNONE;
string _sym;
int _n;

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

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

void OnChartEvent(const int id, const long& lparam, const double& dparam, const string& sparam)
{
	if (id == CHARTEVENT_CHART_CHANGE)
	{
		if (UpdateBodyWidth() || UpdateMaskColor())
			ChartRedraw();
	}
}

bool UpdateMaskColor()
{
	if (!ColorIsNone(BackColor))
		return(false);

	color newBgColor 

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

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

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

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

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

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

Стоимость полного кода
1 126₽ ≈ $13.76