FracTandles
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «%23 fractal candles modded.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
FracTandles — пользовательский индикатор для платформы MetaTrader 5, визуализирующий состояние рынка на основе анализа фрактальных уровней. Индикатор использует встроенные функции MetaTrader для обнаружения верхних и нижних фракталов и определяет направление тренда по тому, какой из фракталов был пробит ранее.
На основе текущей ситуации с фракталами индикатор раскрашивает свечи графика в два цвета: один цвет обозначает бычье доминирование, другой — медвежье. Цветовая схема различается в зависимости от направления тренда и типа свечи (бычья или медвежья), что позволяет быстро оценить рыночную обстановку визуально.
Индикатор отрисовывает четыре гистограммных буфера в окне графика и позволяет настраивать диапазон анализируемых баров, толщину отображаемых столбцов и цвета для каждой комбинации тренда и свечи. Расчёт выполняется на каждом тике с учётом уже посчитанных баров.
Настройки программы
| Настройка | Описание |
|---|---|
| IndicatorRange | Задаёт количество баров, анализируемых при расчёте индикатора. Если значение равно -1 или превышает количество доступных баров, используется весь доступный диапазон. |
| width | Определяет толщину отображаемых гистограмм на графике. |
| GreenUp | Цвет отрисовки для бычьих (длинных) свечей при восходящем тренде. |
| GreenDown | Цвет отрисовки для бычьих (длинных) свечей при нисходящем тренде. |
| RedUp | Цвет отрисовки для медвежьих (коротких) свечей при восходящем тренде. |
| RedDown | Цвет отрисовки для медвежьих (коротких) свечей при нисходящем тренде. |
Поиск по коду файла
/*
modded Jan 18, 2012
by zoraq the unstable
*/
#property indicator_chart_window
#property indicator_buffers 4
extern int IndicatorRange = 400;
extern int width = 2;
extern color GreenUp = Green;
extern color GreenDown = Green;
extern color RedUp = Red;
extern color RedDown = Red;
double Buf0[];
double Buf1[];
double Buf2[];
double Buf3[];
double Buf4[];
double Buf5[];
double Buf6[];
double Buf7[];
int init() {
// код доступен только после оплаты
}
int deinit() {
return (0);
}
int start() {
// код доступен только после оплаты
}
int ToCount;
int var2;
int var3;
int Index1;
int Index2;
int Index3;
double open,close; // added
double FractalHigh;
double FractalLow;
double UPorDOWN;
double Y22;
string TheSymbol = Symbol();
int TimeFrame = Period();
int Counted = IndicatorCounted();
if (IndicatorRange == -1 || IndicatorRange > Bars) IndicatorRange = Bars;
if (Counted == 0) ToCount = IndicatorRange - 1;
if (Counted > 0) ToCount = Bars - Counted - 1;
for (int i = ToCount; i >= 0; i--) {
Index1 = 0;
Index2 = 0;
Index3 = 0;
open = Open[i]; // added
close = Close[i]; // added
var2 = 0;
var3 = 0;
for (int Counter1 = i; Counter1 < Bars; Counter1++) {
FractalHigh = iFractals(TheSymbol, TimeFrame, MODE_UPPER, Counter1);
FractalLow = iFractals(TheSymbol, TimeFrame, MODE_LOWER, Counter1);
if (FractalHigh != 0.0) { //if there is a fractal marker
Buf4[Index1] = FractalHigh; //then set buf4 to the value of this bar this is
Buf6[Index1] = Counter1; //and set buf6 to which bar it is
Index1++; // increment the for/next loop
}
if (FractalLow != 0.0) { //same as above except looking for fractal low
Buf5[Index2] = FractalLow;
Buf7[Index2] = Counter1;
Index2++;
}
if (Index1 > 1 && Index2 > 1) { // neither a fractal high or low
for (Index3 = 1; Index3 < Index1; Index3++) {
if (Buf4[Index3 - 1] > Buf4[Index3]) { //if the value of last fractal is greater than the current fractal
Показано первые 50% кода (символов: 3522)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.