ForexGuru рекомендует:

БЕЗДЕПОЗИТНЫЙ БОНУС 100$

Индикатор "PanPrizma"


Материал Индикатор "PanPrizma"

InstaForex

В индикаторе задействованы все 8 линий. Каждая следующая линия индикатора опирается на результаты предыдущей. Каждая линия кроме первой может быть как усредняющей так и интерполирующей в зависимости от указанного направления (-1) – усреднение, или (1) интерполяция. Первая линия только усредняет.



Поскольку, длинна плеча ограниченна разрядностью системы (коэффициенты могут возрастать больше чем позволяет отразить система с точностью до ЕДЕНИЦЫ) введен параметр ИНТЕВАЛ, когда рассматриваются не соседние значения, а значения расположенные на определенном интервале (задается в исходных данных).

Последний задаваемый параметр ТОЧКА ВХОДА от начала графика, может пригодиться.



Принцип УСРЕДНЕНИЯ (сглаживания)

Если Х1 значение графика (предположим колеблется от минус Х1 до плюс Х1), точка Х5 с координатами (0;0) последняя точка усредненной линии, то значение Х2 получится при помощи усреднения первой степени или прямой (рычаг Архимеда – проигрываем в расстоянии выигрываем в силе), а значение Х3 получится при помощи усреднения второй степени или квадратной параболы. Можно видеть, что парабола обеспечивает большую гладкость усредненной линии. С ростом степени и длинны плеча гладкость возрастает. С точки зрения механики, изменение значения Х1 при усреднении первой степени связано с изменением скорости, а при усреднении второй степени с изменением ускорения. В результате усреднения N последних точек связанны соответствующим уравнением.

Принцип ЛИНЕЙНОЙ ИНТЕРПОЛЯЦИИ

Известно, что минимально необходимо две точки чтобы провести прямую, три точки, чтобы провести квадратную параболу, четыре кубическую и т.д. Или Х4 и Х5 для интерполяции первой степени и Х4, Х5 и Х6 для интерполяции второй степени. Чтобы интерполированные точки образовывали достаточно гладкую линию нужно, чтобы или степень или плечо интерполяции была меньше степени или плеча усреднения. При равной степени и плече получим начальное значение Х1. (индикатор работает по точкам открытия последнего бара)

Прямая это арифметическая прогрессия, чтобы получить третью точку после первых двух:
У3= (У2-У1)+У2 = 2*У2 – У1 - возвратное уравнение первой степени для равноотстоящих точек. (Аналогично уравнению после сокращения всех коэффициентов уравнения Лагранжа)

Принцип ТРИГОНОМЕТРИЧЕСКОЙ ИНТЕРПОЛЯЦИИ.

Используем формулу синуса двойного угла: Sin 2a = 2* Cos a* Sin a . Геометрически можно доказать её справедливость в виде : Sin 2a = 2* Cos a* Sin a - 0
и соответственно: Sin 3a = 2* Cos a* Sin 2a - Sin a и т.д. где Cos a - косинус угла одного шага, а Sin по сути соответствующее значение графика. Тогда возвратное уравнение первой степени для синусойды около нуля выглядит: У3 = 2* Cos a * У2 – У1 . Видим полную аналогию с уравнением для прямой. В индикаторе переход от тригонометрических уравнений к линейным обеспечивается назначением периода равного единице. Cos 360 равен 1 , тогда уравнение вырождается в линейное.

ВОЗМОЖНОСТИ ИНДИКАТОРА
If (LIN_2_NAPR == -1)
{
if(LIN_2_STEP==100) if(LIN_2_STEP==200) if(LIN_2_STEP==300)
if(LIN_2_STEP==400) От сглаженной линии ищет осевую ЧЕТЫРЕХ синусойд
if(LIN_2_STEP==500) От сглаженной линии ищет осевую ПЯТИ синусойд

if(LIN_2_STEP==1) УСРЕДНЯЕТ СООТВЕТСТВУЮЩЕЙ СТЕПЕНЬЮ.
if(LIN_2_STEP==2) if(LIN_2_STEP==3) if(LIN_2_STEP==4) if(LIN_2_STEP==5) if(LIN_2_STEP==6) if(LIN_2_STEP==7) if(LIN_2_STEP==8) if(LIN_2_STEP==9)

if(LIN_2_STEP==10) УСРЕДНЯЕТ СООТВЕТСТВУЮЩЕЙ СТЕПЕНЬЮ. НАБЛЮДЕНИЕ для линейных уравнений максимальная степень 4 При больших линейных степенях линии неустойчивы (идут в разнос по амплитуде).

If (LIN_2_NAPR == 1)
{
if(LIN_2_STEP==1001) Визуализирует, что себе думает индикатор о перспективе исходя из ситуации, назначенных периодов и степени (последние цифры).
if(LIN_2_STEP==1002) if(LIN_2_STEP==1003) if(LIN_2_STEP==1004) if(LIN_2_STEP==1005) if(LIN_2_STEP==1006) if(LIN_2_STEP==1007) if(LIN_2_STEP==1008) if(LIN_2_STEP==1009) if(LIN_2_STEP==1010)
//------------------------------------------------------------------------------
if(LIN_2_STEP==1) Интерполирует уравнением соответствующей степени
if(LIN_2_STEP==100) Интерполирует уравнением соответствующей степени (первые числа) и ищет осевую одной верхней синусойды . Остальные по аналогии. До 10 000
//------------------------------------------------------------------------------
if(LIN_2_STEP==2) a2_Buffer[i]= O;
if(LIN_2_STEP==200) a2_Buffer[i]= ((M+P)/2-O*LIN_2_COS_1)/(1-LIN_2_COS_1);
//------------------------------------------------------------------------------
if(LIN_2_STEP==3) a2_Buffer[i]= O;
if(LIN_2_STEP==300) a2_Buffer[i]= ((M+P)/2-O*LIN_2_COS_1)/(1-LIN_2_COS_1);
//------------------------------------------------------------------------------
if(LIN_2_STEP==4) a2_Buffer[i]= O;
if(LIN_2_STEP==400) a2_Buffer[i]= ((M+P)/2-O*LIN_2_COS_1)/(1-LIN_2_COS_1);


Скачать с сервера
Размер на сервере: 637.04 Kb

Коментарии
Зарегистрируйтесь или войдите что бы оставлять коментарии
1  
не работает

ForexGuru - портал для форекс трейдеров

ForexGuru - крупный портал с ПО для MT4 и MT5. Форекс советники, индикаторы, скрипты, стратегии, все это представлено в большом количестве на нашем сайте. Все файлы находятся на нашем сервере и Вам не придется ждать что бы скачать нужный файл.