SSA of MFI AA TT
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «ssa of mfi aa tt.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Индикатор «SSA of MFI AA TT» отображает в отдельном подокне результат применения метода Сингулярного Спектрального Анализа (SSA) к индикатору Money Flow Index (MFI). Расчёт выполняется через внешнюю библиотеку libSSA.dll. Основная линия индикатора представляет собой сглаженную SSA-линию, а дополнительные буферы отображают стрелки покупочных и продажных сигналов.
Сигналы формируются при пересечении SSA-линией заданного уровня (CrossLevel) или нулевой отметки. Стрелки рисуются на указанном баре с настраиваемым отступом от ценовых экстремумов свечей. Индикатор поддерживает настройку режима отображения стрелок (скрыты, внутри, по центру, снаружи) и выбор типов отображаемых стрелок.
Индикатор оснащён системой уведомлений: всплывающие сообщения, звуковые сигналы, e-mail и push-уведомления срабатывают при появлении стрелок BUY/SELL. Параметры SSA (задержка, количество вычислений) ограничены внутренними пределами для стабильной работы.
Настройки программы
| Настройка | Описание |
|---|---|
| NumberOfBars | Количество баров, используемых для расчёта индикатора. Максимальное значение ограничено 5000. |
| MFIPeriod | Период расчёта индикатора Money Flow Index (MFI), используемого в качестве исходных данных для SSA. |
| Lag | Параметр задержки (lag) для алгоритма SSA. Ограничен значением до 200. Влияет на глубину анализа. |
| NumberOfComputations | Количество вычислительных итераций SSA, позволяющее точнее подогнать результат к исходным данным. Ограничено значением 20. |
| Price | Тип цены, используемой при расчёте MFI (например, PRICE_CLOSE). |
| ShowArrowsSW | Переключатель включения/отключения отрисовки стрелок BUY и SELL. |
| CrossLevel | Уровень, при пересечении которого SSA-линией формируются стрелки. Положительное и отрицательное значения задают верхнюю и нижнюю границы фильтрации. |
| WhichArrows | Тип отображаемых стрелок: только при пересечении нуля, только при пересечении уровня, оба типа или все сразу. |
| ShowArrows | Режим отображения стрелок: скрыты, внутри свечей, по центру или снаружи. |
| ARROWBAR | Номер бара, на котором отрисовываются стрелки. Значение 0 означает текущий бар (до закрытия стрелка может исчезнуть). |
| ArrGap | Дистанция от экстремумов High/Low свечи до размещения стрелки. |
| SIGNALBAR | Бар, на котором фиксируются и отображаются торговые сигналы стрелок. |
Поиск по коду файла
#property description "Индикатор работает с библиотекой libSSA.dll"
#property description "^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^"
#property description "Moving Average на основе метода Сингулярного Спектрального Анализа [SSA]."
#property description "Параметры SSA позволяют сгладить выделенный тренд,"
#property description "и установить порог фильтрации шума. SSA не имеет фазовых запаздываний,"
#property description "в отличие от методов обычной фильтрации и сглаженной MA."
#property description " "
#property description "SSA перерисовывается!!!" //"НЕ перерисовывается! в режиме MTF."
#property description " " //* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * "
#property description "Почта: t*******e*@mail.ru"
#property version "2.92"
#import "libSSA.dll"
void fastSingular(double& sourceArray[], int arraySize, int lag, int numberOfComputationLoops, double& destinationArray[]);
#import
#property indicator_separate_window
#property indicator_buffers 3
#property indicator_color1 clrLime //Goldenrod
#property indicator_color2 clrWhite //LightSteelBlue
#property indicator_color3 clrRed //MediumOrchid
#property indicator_width1 2
#property indicator_width2 0
#property indicator_width3 0
#property indicator_style1 STYLE_DASH
#property indicator_style2 STYLE_DOT
#property indicator_style3 STYLE_DOT
#property indicator_levelcolor clrDimGray //White
#property indicator_levelstyle STYLE_DOT
enum arrows { ArrowsOFF, arCrossZero, arCrossLev, allArrows };
enum showAR { HideArrows, INSIDE, CENTER, OUTSIDE }; //enum showAR { aDoNotCALC, HideArrows, aOnCHART, aOnINDIK };
extern int NumberOfBars = 1234;
extern int MFIPeriod = 12; //14;
extern int Lag = 12; //25;
extern int NumberOfComputations = 2; //2;
extern ENUM_APPLIED_PRICE Price = PRICE_CLOSE;
extern bool ShowArrowsSW = true;
extern int CrossLevel = 15;
extern arrows WhichArrows = allArrows; //arCrossLev; //arCrossSignal; //CrossZero; //
extern showAR ShowArrows = OUTSIDE; //IN
extern int ARROWBAR = 0; //На каком баре рисовать Стрелку: =0 - рисовать на текущем (до закрытия - может исчезнуть)
extern int ArrGap = 5; //Дистанция от High/Low свечи
extern color ColorBUY = clrWhite, //LightCyan, //Aqua, // //DarkTurquoise, //LimeGreen, //FireBrick, //Aqua, //
ColorSEL = clrRed; //Magenta; //Gold; // //HotPink; //Orange; //SlateBlue; //DodgerBlue; //Lavender; //Gold; //
extern int CodeBUY = 233,
CodeSEL = 234,
ArrSize = 1;
extern int SIGNALBAR = 1;
extern bool AlertsMessage = true, //false,
AlertsSound = true, //false,
AlertsEmail = false,
AlertsMobile = false;
extern string SoundBUY = "news.wav",
SoundSELL = "expert.wav"; //"alert2.wav"; //"expert.wav"; //"stops.wav" //"alert2.wav" //"news.wav"; //
double SSA[], ARRUP[], ARRDN[], sourceValues[], calcValues[];
int ARB, SGB; string PREF; datetime TimeBar=0;
int init()
{
// код доступен только после оплаты
}
int deinit() { ALL_OBJ_DELETE(); Comment(""); return(0); }
void ALL_OBJ_DELETE()
{
string name;
for (int s=ObjectsTotal()-1; s>=0; s--) {
name=ObjectName(s);
if (StringSubstr(name,0,StringLen(PREF))==PREF) ObjectDelete(name); }
}
datetime LastBarOpenTime=0;
bool NewBarTF(int period)
{
datetime BarOpenTime=iTime(NULL,period,0);
if (BarOpenTime!=LastBarOpenTime) {
LastBarOpenTime=BarOpenTime;
return (true); }
else
return (false);
}
int start()
{
// код доступен только после оплаты
}
static datetime barTime;
int i, n, limit, CountedBars=IndicatorCounted();
n = NumberOfBars;
if (n > Bars)
{
n = Bars;
Показано первые 50% кода (символов: 8141)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.