Это да. Не заметил. Я использовал RGraph и он как раз этого не умел. Ну уже сделано, тем более, что у меня там есть Японские свечи и Интервальные графики. Кроме того я масштабы могу менять. Ну и еще по мелочи.
а еще ExplorerCanvas могу и я приделать, просто это учебный проект и я не хочу IE ни под каким соусом.
Приделал еще нейронную сеть, для предсказания тренда, но она никакая.
Сдам и выложу. Писал в большой спешке, потому там код иногда мягко говоря не фонтан. Помощь мне не нужна. А вот сама рисовалка графиков в принципе получилась ничего так.
зато нужен опыт коллективной разработки, умение координировать работу команды, проектировать имплементацию так, чтобы её могли делать несколько разрабов.
система визуального анализа..... дальше не скажу. Сразу говорю, у нас разброд и шатания, потому тему практически высосал из пальца и сам реализовал. Звучит круто, выглядит отвратительно :-)
>А нафига их просто рисовать? Я понимаю ещё, аналитику какую-нибудь на их основе делать, предсказания небольшие строить. А просто график зачем нужен?
Только вот аналитика начинается когда график есть, так? А я смотрю все решения либо Flash, либо строятся на рисовании графика на сервере, а затем передачи его к клиенту. Большинство рисовалок на канвас игрушечные. А моя пашет и на iPhone и на Андроиде. Тоесть маленькое решение которое В ДАННЫЙ момент есть ТОЛЬКО уменя.
Я хотел-бы туда воткнуть какие нибудь алгоритмы предсказания, но их не вижу. Есть алгоритмы требующие обучения, есть алгоритмы с параметрами которые надо подобрать, а потом радоваться тому, что в одной трети случаев все работает.
Осталась неделя, а математики в проекте не появилось. А жаль.
>зато нужен опыт коллективной разработки, умение координировать работу команды, проектировать имплементацию так, чтобы её могли делать несколько разрабов.
согласен, но до сдачи неделя, нет времени на разброд и шатания. Сейчас пишу бумажку и буду сдавать.
Сервер самописный на Flask (http://flask.pocoo.org/). Там простенькая библиотека рядов написана.
• Ряд в памяти, самый быстрый ряд, однако имеющий ограничения на размеры и время жизни.
• Ряд, данные которого хранятся на диске. Для хранения ряда используется база данных типа ключ-значение.
• Ряд, обеспечивающий композицию (интерполяцию, фильтрацию) n рядов. В качестве параметров этот ряд получает вектор, состоящий из рядов источников и функционал осуществляющий комбинирование.
• Набор методов, обеспечивающих сериализацию абстрактного ряда в XML, CSV, JSON данные и обратное восстановление ряда из сериализованных данных.
• Создание ряда из источников в Internet, например Yahoo! Finance.
Минимальный временной интервал поддерживаемый временными рядами равен 1 миллисекунде.
А сервер твой или ты напрямую с рынка берешь? Если твой то лучше на нем считать нейросеть. Нейросеть на javascript - совсем пошло. Учитывая «самый неторопливый» браузер, которым ты пользуешься.
И недостаточно просто задать нейросеть, нужно рассмотреть разные способы представления информации и разные структуры нейросети. В целом особо никто четких методик не придумал, потому в основном делается методом тыка. Но рекомендую все равно почитать какие нибудь книги или рекомендации
>А сервер твой или ты напрямую с рынка берешь? Если твой то лучше на нем считать нейросеть. Нейросеть на javascript - совсем пошло. Учитывая «самый неторопливый» браузер, которым ты пользуешься.
Тут согласен, но я принципиально выношу все, что могу на клиента. Этого сейчас нет. А компьютеры все сильнее и сильнее. Смысл бороться с гуру нейросетей которые задействуют кластер для вычислений?
У меня и ряд получается автономный на сервере (может пополняться) и автономный на клиенте (web storage хотел). Я подгрузил всё и дальше выключаю WiFi.
Я скорее не математик, а инженер. Мне интереснее тот-же FAST, но и сеть хочется попробовать, хоть понять что это такое.
О как интересно. Слушай, почитал про FAST. А есть открытый источник данных, что-бы торги оттуда получить? Мне все равно чьи. Я имею сериализатор, десериализатор (медленный на DOM) из->в свой формат XML. Может XSLT напишу что-бы загружать данные себе?
Просто будет большой прирост производительности. Тот же пистон с psyco хоть и не пример скорости, но JS точно перегонит, возможно на порядки. А если повысится производительность, то нейросеть можно будет чуть-чуть увеличить, а может этого и не хватает.
И если хочешь, чтобы она заработала, хоть и предпочитаешь инженерный подход, поэкспериментируй с представлением информации. Функцию можно задавать не по точкам, а например как коефициенты ряда фурье. Я ничего не утверждаю, просто пример привел как можно по-другому информацию представлять.
если я правильно понимаю, тот же РТС, может дать тебе доступ как физ лицу, за два бакса в месяц, к RTS Standard, RTS Classica и T+0. Хоть без 15минутной задержки данные получать будешь.
+ опять же насколько я понимаю. тот же quik может отдавать данные сторонним приложениям, но тут опять же надо договор с брокером заключить, но зато бесплатно. Ну и quik виндавс онли =(
Но хочется чего-нибудь серьезного. В принципе легко могу сделать линии Боллинджера, но они тоже сами по себе ничего не предсказывают. Как я понял из изучения теханализа (сам читал), все не столько в предсказании, сколько в выборе алгоритма игры. Нам всеравно какая завтра будет цена, нам надо или продавать или покупать. А все индикаторы только подсказка. Ну пробила цена линию боллинджера, значит тренд меняется. Вот и весь анализ.
В общем техническая сторона вопроса (построение распределенного приложения с использованием технологий WEB) сделана, а вот с остальным беда.
Меня терзают смутные сомнения, насчет использования всякого рода сложных индикаторов и алгоритмов в стратегии мтс. А вас нет? Всеже мтс по большей части 'скальпели'. Если не прав --- поправьте
Для миллиона загнется я думаю. У меня сервер может на источник накладывать «аппроксимацию». На самом деле берется просто функционал который возвращает вектор для i-го элемента. Передовать поточечно на клиента бессымсленно из-за скорости которая получится. А вот скажем взять посекундный ряд с акциями за 10 лет и запросить его в виде ряда за 10 лет, но уже с интервалом 1 день можно. Потом сделать Зум до 10 дней, но уже с посекундными данными.
Тема очень интересна. Более того, вынужден прямо день и ночь копать в эту сторону. Нашел какой-то Gray Forecasting. Но там в примере откуда-то затесались непонятные цифры. На средневзвешенные не похожи...
Более того, сетью с двумя слоями, с сигмоидальной функцией активации для скрытого слоя и линейной функцией активации для выходного можно аппроксимировать любую функцию. Это показано у Хагана (1996)