вам надо "парсить" этот файл
ищите устойчивые уникальные словосочетания, для разделения кода.
для начала вижу уже с чего начать
<!-- BEGIN TOP SECTION -->
далее идет сразу ваша таблица.
распарсить её по тегам <TR> и <TR class="alt">
всё.
Хорошо . Как открыть и какую переменную или массив взять для обработки текста .
Я имею в виду вообще нужен массив или одна переменная . Если массив делать построчный, как узнать каким символом или кодом заканчивается строка .
lucka88:
Я имею в виду вообще нужен массив или одна переменная . Если массив делать построчный, как узнать каким символом или кодом заканчивается строка .
Я имею в виду вообще нужен массив или одна переменная . Если массив делать построчный, как узнать каким символом или кодом заканчивается строка .
читайте файл посимвольно и ищите вхождение указанных строк.
Что сделал не правильно ?
string CboeTime["9:00 AM","9:30 AM","10:00 AM","10:30 AM","11:00 AM","11:30 AM","12:00 PM","12:30 PM","1:00 PM","1:30 PM","2:00 PM","2:30 PM","3:00 PM"];
Найдите последний столбик в таблице и читайте из него данные
Спасибо за отзывы получилось . Но без сохранения в файл . Теперь посмотрим насколько это эффективно для торговли.
Еще доделать последнее изменение в верхнюю часть . Но это в торговое время .
Возникла еще одна проблемка !!! При чтении из интернета страница кешируется и последующие обращения берут страницу из кеша. Если терминал перезагрузить только тогда можно получить новое значение. Кто знает как исправить, откликнитесь пожалуйста .
//+------------------------------------------------------------------+ // Скачивает исходный код страницы CBOE в текстовую переменную // и возвращает как результат //+------------------------------------------------------------------+ string ReadCBOE() { if(!IsDllsAllowed()) { Alert("Необходимо в настройках разрешить использование DLL"); return(0); } int rv = InternetAttemptConnect(0); if(rv != 0) { Alert("Ошибка при вызове InternetAttemptConnect()"); return(0); } int hInternetSession = InternetOpenA("Microsoft Internet Explorer", 0, "", "", 0); if(hInternetSession <= 0) { Alert("Ошибка при вызове InternetOpenA()"); return(0); } int hURL = InternetOpenUrlA(hInternetSession, "http://www.cboe.com/data/IntraDayVol.aspx", "", 0, 0, 0); if(hURL <= 0) { Alert("Ошибка при вызове InternetOpenUrlA()"); InternetCloseHandle(hInternetSession); return(0); } int cBuffer[256]; int dwBytesRead[1]; string TXT = ""; while(!IsStopped()) { bool bResult = InternetReadFile(hURL, cBuffer, 1024, dwBytesRead); if(dwBytesRead[0] == 0) break; string text = ""; string text0= ""; for(int i = 0; i < 256; i++) { text0= CharToStr(cBuffer[i] & 0x000000FF); if (text0!="\r") text = text + text0; else dwBytesRead[0]--; if(StringLen(text) == dwBytesRead[0]) break; text0= CharToStr(cBuffer[i] >> 8 & 0x000000FF); if (text0!="\r") text = text + text0; else dwBytesRead[0]--; if(StringLen(text) == dwBytesRead[0]) break; text0= CharToStr(cBuffer[i] >> 16 & 0x000000FF); if (text0!="\r") text = text + text0; else dwBytesRead[0]--; if(StringLen(text) == dwBytesRead[0]) break; text0= CharToStr(cBuffer[i] >> 24 & 0x000000FF); if (text0!="\r") text = text + text0; else dwBytesRead[0]--; if(StringLen(text) == dwBytesRead[0]) break; } TXT = TXT + text; Sleep(1); } InternetCloseHandle(hInternetSession); return(TXT); }
lucka88:
Возникла еще одна проблемка !!! При чтении из интернета страница кешируется и последующие обращения берут страницу из кеша. Если терминал перезагрузить только тогда можно получить новое значение. Кто знает как исправить, откликнитесь пожалуйста .
Возникла еще одна проблемка !!! При чтении из интернета страница кешируется и последующие обращения берут страницу из кеша. Если терминал перезагрузить только тогда можно получить новое значение. Кто знает как исправить, откликнитесь пожалуйста .
InternetOpenUrlA(Net.Session, URL, nill, 0, FLAG_RELOAD|FLAG_PRAGMA_NOCACHE, 0);
Спасибо ! получилось.
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Хочу написать индикатор который берет со страницы CBOE данные и высвечивает их в виде информера .
Адрес страницы http://www.cboe.com/data/IntraDayVol.aspx# .
У меня получилось загрузить страницу (точнее ее исходный код) в формате TXT. Но как работать с большим текстом чтобы найти нужные данные я не знаю .
Если кто может помогите разобратся чтобы получить эти цифры . Остальное я сам напишу .
Полученный мною файл прикрепляю .