/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
/ / Parabolic SAR повторно реализован в
/ / Родной AFL.
/ /
/ / Пример для /, если / иначе операторы управления
/ /
/ / Требуется:
/ / AmiBroker 4.31.1 
/ / 
/ / Автор: Tomasz Janeczko

IAF = 0,02; / / коэффициент ускорения
MaxAF = 0,2; / / максимальное ускорение

Psar = Закрыть; / / инициализация
долго = 1; / / предполагаем, долго начальных условий
AF = IAF / / инициализации acelleration фактор
ер = Low [0]; / / инициализации крайней точки
л = High [0];
р = Low [0];

для (я = 2, г <BarCount, я + +)
{
	если (длинный)
	{
		Psar [я] = Psar [I-1] + AF * (л.с. - Psar [I-1]);
	}
	еще
	{
		Psar [я] = Psar [I-1] + AF * (LP - Psar [I-1]);
	}

	обратное = 0;
	/ / Проверка на разворот
	если (длинный)
	{
		если (Low [я] <Psar [я])
		{
			долго = 0; обратное = 1; / / обратном положении, чтобы Короткие
			Psar [я] = л.с.; / / SAR является высшей точкой в ​​предыдущее торговли
			р = Low [я];
			AF = IAF;
		}
	}
	еще
	{
		если (High [я]> Psar [я])
		{
			долго = 1; обратное = 1; / / заднего хода и долгосрочной
			Psar [я] = р;
			л = High [я];
			AF = IAF;
		}
	}

	если (обратный == 0)
	{
		если (длинный)
		{
			если (High [я]> л.с.) 
			{
				л = High [я]; 
				AF = AF + IAF; 
				если (AF> MaxAF) AF = MaxAF; 
			}
             
			если (Low [I - 1] <Psar [я]) Psar [я] = Low [I - 1];
			если (Low [г - 2] <Psar [я]) Psar [я] = Low [г - 2];
		}
       еще
		{
			если (Low [я] <р)  
			{ 
				р = Low [я]; 
				AF = AF + IAF; 
				если (AF> MaxAF) AF = MaxAF; 
			}	
				
			если (High [I - 1]> Psar [я]) Psar [я] = High [I - 1];
			если (High [г - 2]> Psar [я]) Psar [я] = High [г - 2];

		}
	}
}

Участок (Close, "Цена", colorBlack, styleCandle);
Участок (PSAR, "SAR", colorRed, styleDots | styleNoLine | styleThick);