Фрилансеры предложат решение вашей задачи уже через несколько минут!
Публикация заказа не займет много времени.
9 месяцев назад
 Tereschenko
35 лет, Россия
12 лет в сервисе
Был онлайн 9 месяцев назад
9 месяцев назад

Необходимо на графике вывести горизонтально или вертикально (слева/спарва/сверху/снизу, должно задаваться через параметр) последние N (задается через параметр) изменений цены в пунктах (то есть текущая-предыдущая/минимальное изменение (так называемый "пункт")). То есть вывод будет +5 -7 -1 +2 и  т.д.
====
Есть платформа для торговли на Forex - FXCM TradeStation. В ней на графики можно накладывать индикаторы технического анализа (к примеру - скользящая средняя, регрессия и т.д.). Эти индикаторы можно писать самому на языке Lua или Javascript (примеры привожу на Lua).
Если вкратце о структуре скрипка на Lua под эту платформу (чтобы примерно понимать, сколько работы там): есть несколько обязательных функций которые надо написать, это:
1) function Init() - выполняется один раз при старте платформы, в этой функции по сути составляется описание индикатора:
    indicator:name("Figurelli Series indicator");
    indicator:description("Figurelli Series indicator"); -- как называется,
    indicator:requiredSource(core.Bar); -- тип принимаемых данных (один потом core.Tick или core.Bar, то есть несколько потомков со значениями за определенный промежуток времени (значения на начало и конец периода, минимум и максимум в течении этого промежутка времени)
    indicator:type(core.Oscillator); -- тип выдаваемых значений (core.Indicator, то есть диапазон значений совпадает с источником, core.Oscillator, то есть у него свой диапазон выдаваемых значений)
    indicator.parameters:addInteger("series", "series", "series", 36);
    indicator.parameters:addColor("clr", "Color", "Color", core.rgb(0, 0, 255)); -- парамиетры которые пользователь может задавать
2) function Prepare() -- функция вызывается когда пользователь накладывает индикатор на график. Тут мы должны инициализировать все что нам нужно для работы. Тут у нас имеются
    source = instance.source; --источник данных на основе которого мы должны считать. Зависит от того что мы указали в indicator:type.
    series=instance.parameters.series; --указанные пользователем параметры
    local name = profile:id() .. "(" .. source:name() .. ", " .. instance.parameters.series .. ")";
    instance:name(name); --указываем имя для легенды на графике
    FS = instance:addStream("FS", core.Bar, name .. ".FS", "FS", instance.parameters.clr, first); -- создаем выходные потоки (результат того что мы посчитаем
3) function Update(period, mode) --эта функция при старте вызывается для каждого значения которое нам надо посчитать (по индексу period). То есть period будет 0, 1... и до source:size() - 1. Потом он также будет вызываться при каждом изменении source 
     FS[period]=457348957;--и мы должны произвести какие-нибудь манипуляции и записать результат.
Также в prepare мы можем сказать что сами себя будем отрисовывать (добавить строчку instance.ownerDrawn(true);)
Тогда будет вызываться опциональная функция 
4) function Draw(stage, context)
В ней через context можно создавать ручки, кисти, шрифты (аналог GDI объектов), и рисовать примитивы (линии, текст, квадраты и прочее). 
Вся документация для разработки есть (на английском), примеров тоже куча (гуглите fxcodebase). Зачастую можно найти похожий каркас и подправить внутрянку (но наверное в этом случае проще с нуля). Дебаггера для платформы толкового нет (проще дебажить трейсами: core.host:trace("ырпвоап");
Сам являюсь экспертом по разработке под эту платформу, но работы физически больше чем я могу выполнить, поэтому часть самых простых решил отдать на сторону. В случае чего, могу подсказать чего да как. Если есть уточняющие вопросы - задавайте, отвечу.
Оптимальным кандидатом будет какой-нибудь студент который хочет попробовать пописать торговых роботов (автоматизация торговли на биржах)

Заявки фрилансеров

Сергей Слободянюк
46 лет, Украина
3 года в сервисе
Был онлайн 20 часов назад
9 месяцев назад
ТОП-5 — Прикладное ПО

Похожие заказы

Клиент для интернет магазина

Требуется написать(дописать) программу на Delphi - "клиент для интернет магазина" Уже есть наброски - в таблицу попадает информация из нескольких форматов баз данных с настройками по полям. и выливается все это дело на ftp/http с авторизаци...

Библиотека для работы с графом большого размера

Требуется разработать библиотеку для работы с графом большого размера на чистом Си++ (в дальнейшем планируется использовать её как под виндами, так и под юниксом). Большой размер означает до сотен тысяч вершин и до десятков миллионов рёбер. Библиотек...

СРОЧНО: Удаленная работа для программистов на C, 1000-2000$/месяц

Срочно набираем программистов для удаленной работы: разработки модулей на C для компании работающей в области IT security. - Необходимо знание internet/intranet security, C, Linux. - Желательно знание или опыт работы с port scanners. - Идеально, но

Программа для конвертирования видео файлов (AVI, MPEG, XVID, DivX) в форма

Необходимо создать программу, которая будет конвертировать видео файлы (AVI, MPEG, XVID, DivX) в формат для записи на DVD диски (VOB и INFO), и звук и видео. Требуется не все функции, а только конвертирование. Ждём ваших предложений,бюджет пока пред

Необходима разработка CRM для компании, желательно на базе Lotus Notes

Платформа: Xeon 3000 (1mb; FSB800); 2GB RAM ECC REG; 2X SATA 74GB(10000) RAID-1(Mirror); Dual Giga LAN. 1U RACK. ОС: Windows 2003 Server +SQL Дополнительная нагрузка: Интеграция CRM на данный момент планируется на один из серверов либо с сервисом E

Информационная платформа для сбора и анализа данных о морских происшествиях

В основе проекта (информационной платформы для сбора, анализа и обмена данными о морских происшествиях) лежит БД происшествий и результатов их расследования. Данные имеют иерархическую структуру (есть таксономия). Доступ должен осуществляться через в...

Требуется написать небольшую программу

Требуется написать небольшую программу. Суть ее следующая: есть данные, их нужно один раз ввести, а потом они автоматически заполняются по соответсвующим документам. Остальные подробности по аське, телефону или email.

Toolbar для Броузера

Необходимо написать тулбар(панельку) для броузеров (Explorer, farefox) Панелька должна удаленна читать данные с базы данных и показывать пользователю.

Application Filter для ISA 2004

Необходимо написать небольшой application filter для ISA Server 2004 и несложный MMC Property Page к нему. Фильтр предназначен для мониторинга HTTP и FTP трафика. ТЗ готово лишь на половину, т.к. оно изменится в ходе работы над проектом(запланированн...

Нужно написать Таблицу Прямого Доступа

Срочно!!! Нужно написать Таблицу Прямого Доступа (ТПД) Для разрешения колизий вспомогательная таблица в которой используется повторное хеширование. Ключ - номер телефона (7 значный); Размер основной - 1024; вспомогательной - 512; Количество