AFStar
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «afstar-indicator.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
AFStar — это пользовательский индикатор для платформы MetaTrader 5, отображающий аналитические сигналы в виде стрелок на графике цены. Индикатор выполняет сканирование комбинаций периодов быстрых и медленных экспоненциальных скользящих средних (EMA) и определяет точки пересечения между ними.
В основе логики сигнализации лежит подтверждение пересечений EMA дополнительными проверками на основе индикатора Williams %R с переменным периодом, а также анализ краткосрочных диапазонов ценовых данных. Результаты отрисовки представлены двумя линиями-стрелками разного цвета: одна обозначает потенциальные точки продажи, другая — потенциальные точки покупки.
Индикатор использует два буфера для отрисовки на графике и позволяет настраивать диапазоны параметров скользящих средних и риска, а также количество обрабатываемых баров. Внутренний механизм включает фильтрацию конфликтующих сигналов, при которых одновременно возникают и покупка, и продажа.
Настройки программы
| Настройка | Описание |
|---|---|
| StartFast | Начальное значение периода быстрой экспоненциальной скользящей средней (EMA) при сканировании комбинаций. |
| EndFast | Конечное значение периода быстрой экспоненциальной скользящей средней (EMA) при сканировании комбинаций. |
| StartSlow | Начальное значение периода медленной экспоненциальной скользящей средней (EMA) при сканировании комбинаций. |
| EndSlow | Конечное значение периода медленной экспоненциальной скользящей средней (EMA) при сканировании комбинаций. |
| StepPeriod | Шаг приращения периода скользящей средней при переборе комбинаций быстрых и медленных EMA. |
| StartRisk | Начальное значение параметра риска, используемого при расчёте периода индикатора Williams %R и связанных пороговых значений. |
| EndRisk | Конечное значение параметра риска, используемого при расчёте периода индикатора Williams %R и связанных пороговых значений. |
| StepRisk | Шаг приращения параметра риска при переборе значений для расчёта Williams %R. |
| AllBars | Максимальное количество баров, обрабатываемых индикатором. Если значение превышает 1000, оно ограничивается до 1000. |
Поиск по коду файла
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Magenta
#property indicator_color2 Aqua
extern double StartFast=3;
extern double EndFast=3.5;
extern double StartSlow=8;
extern double EndSlow=9;
extern double StepPeriod=0.2;
extern double StartRisk=1;
extern double EndRisk=2.8;
extern double StepRisk=0.5;
extern int AllBars=500;
int shift=0,RiskCnt=0, EndScan1=0, EndScan2=0;
double iMaSlowPrevious=0, iMaSlowCurrent=0, iMaFastPrevious=0, iMaFastCurrent=0;
double FastCnt=0, SlowCnt=0;
double Buy1[1000], Sell1[1000];
double Buy2[1000], Sell2[1000];
double Buy=0, Sell=0;
double val1[];
double val2[];
int init()
{
// код доступен только после оплаты
}
int deinit()
{
return(0);
}
int start()
{
// код доступен только после оплаты
}
if (AllBars>=1000) AllBars=1000;
SetIndexDrawBegin(0,Bars-AllBars+11+1);
SetIndexDrawBegin(1,Bars-AllBars+11+1);
int i,shift,counted_bars=IndicatorCounted();
int Counter,i1,value10,value11;
double value1,x1,x2;
double value2,value3;
double TrueCount,Range,AvgRange,MRO1,MRO2;
double Table_value2[1000];
if(Bars<=11+1) return(0);
if(counted_bars<11+1)
{
for(i=1;i<=0;i++) val1[AllBars-i]=0.0;
for(i=1;i<=0;i++) val2[AllBars-i]=0.0;
}
shift=AllBars-11-1;
while(shift>=0)
{
Sell1[shift]=0;
Buy1[shift]=0;
EndScan1=0;
SlowCnt=StartSlow;
while (SlowCnt<=EndSlow)
{
if (EndScan1==1) break;
FastCnt=StartFast;
while (FastCnt<=EndFast)
{
if (EndScan1==1) break;
iMaSlowPrevious = iMA(NULL,0,SlowCnt,0,MODE_EMA, PRICE_CLOSE, shift-1);
iMaSlowCurrent = iMA(NULL,0,SlowCnt,0,MODE_EMA, PRICE_CLOSE, shift);
iMaFastPrevious = iMA(NULL,0,FastCnt,0, MODE_EMA, PRICE_CLOSE, shift-1);
iMaFastCurrent = iMA(NULL,0,FastCnt,0, MODE_EMA, PRICE_CLOSE, shift);
if (iMaFastPrevious<iMaSlowPrevious && iMaFastCurrent>iMaSlowCurrent) { EndScan1=1; Sell1[shift]=1;}
if (iMaFastPrevious>iMaSlowPrevious && iMaFastCПоказано первые 50% кода (символов: 3619)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.