Смотри, как бесплатно скачать роботов
Ищи нас в Twitter!
Ставь лайки и следи за новостями
Ставь лайки и следи за новостями
Интересный скрипт?
Поставь на него ссылку - пусть другие тоже оценят
Поставь на него ссылку - пусть другие тоже оценят
Понравился скрипт?
Оцени его работу в терминале MetaTrader 5
Оцени его работу в терминале MetaTrader 5
YuraZ_Book_All_PriceCH индикатор для биржи ( изменения от 2022.02.12 ) - индикатор для MetaTrader 5
- Просмотров:
- 2808
- Рейтинг:
- Опубликован:
- 2020.10.31 14:26
- Обновлен:
- 2022.02.11 22:50
- Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу
Многофункциональный индикатор для биржи. В описании ниже понятно что где показывает.
Для полноценного функционирования, необходимо предварительно запустить скрипт чтения
данных дивидендов с сайта https://www.dohod.ru
страница отвечает за каждый отдельный инструмент например для SBERP https://www.dohod.ru/ik/analytics/dividend/sberp
скрипт опубликован ниже.
Колонки:
- Имя инструмента.
- Процент читаемый по каждому инструменту с сайта https://www.dohod.ru/ik/analytics/dividend/
- Сумма дивидендов
- Минимальное количество лот
- Минимальная сумма покупки одного лота
- Дневное изменение CH% считает от закрытия прошлого дня
- Объем выставленных отложенных ордеров на покупку
- Объем выставленных отложенных ордеров на продажу
- Разница между объемами отложенных ордеров
- Процент разницы
- Направление движения по объемам отложенных ордеров
- Объем совершенных покупок с начала дня
- Объем совершенных продаж с начала дня
- Разница между совершенным покупками и продажами с начала дня
параметры
//+------------------------------------------------------------------+ //| yz_Gev_Dividend.mq5 | //| Copyright 2020,YuraZ | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2020,YuraZ" #property link "https://www.mql5.com" #property version "1.00" //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ void OnStart() { int i_SymbolsTotal=SymbolsTotal(true); // false - Все символы , true – только символы в MarketWatch for(int i=0; i<i_SymbolsTotal; i++) // найдем инструменты с контрактом pKontract { string sSymbol = SymbolName(i,true) ; // false); // Загоним символ в массив StringToLower(sSymbol); GetDividend(sSymbol); } } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ void GetDividend(string sSymbol) { string cookie=NULL,headers; char post[],result[]; int iPos2; int iPos1; string strВыплптаНаАкцию; string url="https://www.dohod.ru/ik/analytics/dividend/" ; url=url+sSymbol; //--- для работы с сервером необходимо добавить URL "https://www.dohod.ru" //--- в список разрешенных URL (Главное меню->Сервис->Настройки, вкладка "Советники"): //--- обнуляем код последней ошибки ResetLastError(); //--- загрузка html-страницы с Yahoo Finance int res=WebRequest("GET",url,cookie,NULL,500,post,0,result,headers); if(res==-1) { Print("Ошибка в WebRequest. Код ошибки =",GetLastError()); //--- возможно, URL отсутствует в списке, выводим сообщение о необходимости его добавления MessageBox("Необходимо добавить адрес '"+url+"' в список разрешенных URL во вкладке 'Советники'","Ошибка",MB_ICONINFORMATION); } else { if(res==200) { // Распарсим результат // найти дивиденды // <table id="dividends-brief"> // <tr class="frow"> // <td class="greendark">11.54%</td> <td class="dlmtr"></td> // <td class="gray">2.14%</td> <td class="dlmtr"></td> // <td class="greenlight">0.79</td> </tr> // <tr class="srow"> // <td>текущая доходность</td><td class="dlmtr"></td> // <td>доля от прибыли</td><td class="dlmtr"></td> // <td><a id="dsi-link" title="Методика расчета индекса стабильности дивидендных выплат (DSI)" href="/ik/analytics/dividend/pdf/dsi.pdf">индекс DSI</a></td> // </tr> // </table> string strPars = CharArrayToString(result,0,-1,CP_UTF8); string Div; iPos1 = StringFind(strPars,"<table id=\"dividends-brief\">",0); // Найдем начало таблицы дивидендов if(iPos1 !=0) { //string strPars; iPos1 = StringFind(strPars,"<p>Совокупные дивиденды в следующие 12m: <strong><span class=",0); // //printf(" %d %d ",iPos1,iPos2 ); iPos1 = iPos1+StringLen("<p>Совокупные дивиденды в следующие 12m: <strong><span class="); // //printf(" %d %d ",iPos1,iPos2 ); iPos1 = StringFind(strPars,">",iPos1)+1; // //printf(" %d %d ",iPos1,iPos2 ); iPos2 = StringFind(strPars,"</span>",iPos1); // //printf(" %d %d ",iPos1,iPos2 ); // strВыплптаНаАкцию = StringSubstr(strPars, iPos1, iPos2-iPos1 ); //iPos2-iPos1 ); printf("%s %d %d %d [%s] ",sSymbol, iPos2-iPos1 ,iPos1,iPos2, strВыплптаНаАкцию ); iPos1 = StringFind(strPars,"<table id=\"dividends-brief\">",0); // Найдем начало таблицы дивидендов strPars = StringSubstr(strPars, iPos1, 500); iPos1 = StringFind(strPars,"<tr class=\"frow\">",0); // найдем <tr class="frow"> strPars = StringSubstr(strPars, iPos1+1, 500); iPos1 = StringFind(strPars,"<td class=",0)+1; // <td class= тут может быть разный цвет strPars = StringSubstr(strPars, iPos1, 500); iPos1 = StringFind(strPars,">",0); // Нахдим ограничитель цвета iPos2 = StringFind(strPars,"</td>",0); // найдем завершение </td> пример ---}}}} >11.54%</td> Div = StringSubstr(strPars,iPos1+1,iPos2 - 1 - iPos1) ; // вырезаем дивиденды printf("[%s] [%s] [%s]",sSymbol, Div, strВыплптаНаАкцию); int filehandle=FileOpen("yz_Div_"+sSymbol+".dat",FILE_WRITE|FILE_SHARE_WRITE|FILE_CSV,"|"); if(filehandle!=INVALID_HANDLE) { //--- сохраняем содержимое массива result[] в файл FileWrite(filehandle,"<"+Div+"><"+strВыплптаНаАкцию+">" ); //--- закрываем файл FileClose(filehandle); } } //--- успешная загрузка // PrintFormat("Файл успешно загружен, размер %d байт.",ArraySize(result)); //PrintFormat("Заголовки сервера: %s",headers); //--- сохраняем данные в файл int filehandle=FileOpen("yz_Div_"+sSymbol+".htm",FILE_WRITE|FILE_BIN); if(filehandle!=INVALID_HANDLE) { //--- сохраняем содержимое массива result[] в файл FileWriteArray(filehandle,result,0,ArraySize(result)); //--- закрываем файл FileClose(filehandle); } else { Print("Ошибка в FileOpen. Код ошибки =",GetLastError()); } } else { //PrintFormat("Ошибка загрузки '%s', код %d",url,res); } } } //+------------------------------------------------------------------+
iMACD Trend N Bars
Непрерывный рост индикатора iMACD (Moving Average Convergence/Divergence, MACD) на заданном количестве баров
Last position typeУтилита - отображает по текущему символу и для заданного Magic тип последней позиции
Open Open Days
Работа с трендовыми линиями ( OBJ_TREND )
MACD Intersection Main and SignalОтображение индикатора iMACD (Moving Average Convergence/Divergence, MACD) и вертикальных линий в месте пересечения линии 'Main' и 'Signal'