LINUX.ORG.RU
решено ФорумTalks

Сколько будет стоит разработка демона и контрольной утилиты?

 , , , ,


2

1

П.С. Проблема в том что я вообще не представляю где и за сколько можно нанять разработчика, ЛОРовцы мне не по карману. Бюджет 20 тыр если это полная авантюра, если кто-то готов нормально провести разработку то могу подумать о 50 тыр. плюс иногда покупка консультаций и поддержки.
Лицензия будет GPL-3, так что потом можно продать этот комплекс кому то ещё.

В общем виде комплекс мне видится так:

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

В качестве сервера БД наверное имеет смысл использовать Postgress или mySQLMariaDB?

Но надо чтобы сервер был отдельным приложением чтобы к БД могли обращатся и другие программы, включая отдаваемые через терминал запросы.

И может вообще стоит всё взаимодействие с демоном вести через создание записей в БД?

Но контрольная утилита нужна в любом случае для получения демоном временного пароля для проведения транзакции.

И как вообще с заклонностью в РФ по написанию и использованию такого клиента?

Если тут есть разработчики Сбербанка для биржевой торговли то они отдельно приглашаются к обсуждению проекта.

★★★★★

Последнее исправление: torvn77 (всего исправлений: 4)

Ответ на: комментарий от XoFfiCEr

Не совершай такой глупости просто.

Почему это является глупостью?
Если человек опубликовал или откомитил код под лицензией GPL_3 то как я понимаю он уже не сможет его отозвать обратно.

Я не против потребовать передачу авторских прав, но для этого потребуется официальная регистрация проекта и отношений, а не просто создание "организации" на гитхабе.

С другой стороны главная ценность проекта это стандарт на дизайн БД и работающие с ним утилиты и роботы, а демон это просто прокладка между БД и торговой системой.

torvn77 ★★★★★
() автор топика
Последнее исправление: torvn77 (всего исправлений: 1)
Ответ на: комментарий от Stack77

За доступ для прямых sql-запросов на серверную СУБД (удаленную) сразу нужно забывать, и реализовывать свой REST API с авторизацией или что-то в этом духе.

С точки зрения системы cgi с REST API это ещё один торговый робот, его можно дописать и потом если проект получит развитие, но вы меня подтолкнули к важной мысли, 📌Демон должен быть двуинтерфейсным и одним интерфейсом смотреть на WAN с торговой системой, а другим на localhost или LAN с сервером БД.

Так то я думаю демона, сервер БД и скрипты держать на локалхосте, при этом скрипты будут вида дождаться минимума и по таймауту купить, дождаться пика и по таймауту продать.

torvn77 ★★★★★
() автор топика
Последнее исправление: torvn77 (всего исправлений: 1)
Ответ на: комментарий от torvn77

Ты определись, что тебе нужно! Если многопользовательская база где-то в облаке или VPS, тогда всё то, о чем я говорил выше. Если ты хочешь обращаться к API биржи и хранить всё в локальной БД, то тебе никакой 127.0.0.1 не нужен, а нужна встраиваемая СУБД, например, SQLite.

Stack77
()
Ответ на: комментарий от Stack77

Если ты хочешь обращаться к API биржи и хранить всё в локальной БД, то тебе никакой 127.0.0.1 не нужен, а нужна встраиваемая СУБД, например, SQLite.

Есть четыре момента:

  • Мне кажется что писать код для работы с БД на ip всёже проще, чем работать с ней через api библиотеки.
  • Даже если всё будет крутится на одном компьютере то всё равно на БД будет висеть несколько десятков процессов с паралельным доступом к данным на чтение и в таблицу транзакций ещё и на запись с весьма большой вероятностью паралельной записи.
    Конечно можно в каждом скрипте писать семафоры и транзакции, но зачем если всё это уже есть в сервере БД?
  • У серверных БД более мощные языки запросов и больше разных способов хранения и встроенной в сервер способов обработки информации.
  • При необходимости серверная БД позволит часть скриптов|роботов выселить на отдельный компьютер.
torvn77 ★★★★★
() автор топика
Последнее исправление: torvn77 (всего исправлений: 3)
Ответ на: комментарий от torvn77

Потому что ты платишь за разработку а другие заинтересованные будут платить за копию программы. Ну если ты такой щедрый то пожайлуста, но меня эта тема больше не интересует.

XoFfiCEr ★★☆☆
()
Ответ на: комментарий от torvn77

Ну смотри сам, но я тебе уже сказал что ты глупо поступаешь. Открытая лицензия вообще необязательна.

XoFfiCEr ★★☆☆
()
Ответ на: комментарий от XoFfiCEr

ли нужно обращение к серверу биржи не чаще чем раз в минуту то можно php файл кроном дергать

Откуда такое ограничение?

Psilocybe ★★★★
()
Ответ на: комментарий от Psilocybe

Тут скорее другой вопрос, зачем дёргать файл если можно сделать цикл while и паузу в работе(или ожидание таймера)?

torvn77 ★★★★★
() автор топика
Последнее исправление: torvn77 (всего исправлений: 1)
Ответ на: комментарий от Psilocybe

ограничение может быть самое разное, надо смотреть какую (какие) биржи выберет torvn77

XoFfiCEr ★★☆☆
()
Ответ на: комментарий от XoFfiCEr

Нет, просто лежу на диване, по своим привычкам я что-то сделаю не раньше чем через пол года, это если вообще встану с дивана.

torvn77 ★★★★★
() автор топика
Ответ на: комментарий от XoFfiCEr

А почему js и php, а не python?
В нём то циклы вроде как есть.

И в любом случае эта система безполезна без знания постгресса и того, как для него писать формы на Питоне.
Так что прежде чем всю эту систему заказывать, надо будет всё это изучить.

torvn77 ★★★★★
() автор топика
Последнее исправление: torvn77 (всего исправлений: 4)
Ответ на: комментарий от torvn77

зачем обязательно постгрес? для понтов? мускуля на все хватит.

XoFfiCEr ★★☆☆
()
Ответ на: комментарий от torvn77

для php так лучше не делать. Ну или ограниченное число раз, чтобы верхная оценка работы процесса была предсказуемой и не слишком большой. Приходилось делать грабберы на php через курл, но иногда, по неведомым причинам процесс виснет. Скорей всего виноват курл или сайт возможно как-то не так отвечает иногда.

Так что, потом прикручиваешь баш-скрипт , который следит за процессом и отстреливает при превышении времени работы больше ожидаемой.

С другой стороны, при повторном пуске уже всё закешировано и не занимает много времени.

Psilocybe ★★★★
()
Ответ на: комментарий от torvn77

если ты про php то оно просто зависнет на виртуальном хостинге если. Бесконечный цикл в php это хреново. Скорее всего будет ошибка 500.

XoFfiCEr ★★☆☆
()
Ответ на: комментарий от XoFfiCEr

хаха ты хоть пробовал писать что-нибуть на эту тему? редиректы, https кроме того курл в мультизагрузку умеет

Psilocybe ★★★★
()
Ответ на: комментарий от Psilocybe

зачем мне писать что то на форуме если я это делаю постоянно граблю контент с некоторых других сайтов (сначала парсинг rss)

XoFfiCEr ★★☆☆
()
Последнее исправление: XoFfiCEr (всего исправлений: 1)
Ответ на: комментарий от Psilocybe

С редиректами в этом деле не сталкивался. Парсим rss смотрим что за новые темы и их конкретно уже обрабатываем, запрашиваем страницы вырезаем текст. В принципе можно из rss канала например лажевого форумного движка phpbb вырезать контент. С помощью crona ничто не мешает запускать несколько php файлов, но я не пробовал у меня только один такой.

XoFfiCEr ★★☆☆
()
Ответ на: комментарий от Psilocybe

Ты pcylocybe имеешь в виду что сначала надо получить ответ сервера (response) и если там редирект 301 например то на ту страницу перейти куда редирект?

XoFfiCEr ★★☆☆
()
Ответ на: комментарий от XoFfiCEr

да 301 или 302 может быть например при переезде с http на https, на http ссылку оставляют редирект 301. Или таким манером в куки насрут одни раз а потом 302 вызовут чтоб их же и прочитать, как будто так и было

Psilocybe ★★★★
()
Последнее исправление: Psilocybe (всего исправлений: 1)
Ответ на: комментарий от torvn77

у тебя есть два варианта по поводу этой разработки.

Либо программисты делают по твоим хотелкам хочешь python да не вопрос, postgresql не вопрос.

Или они сделают так как это будет оптимально и не избыточно, но со всем нужным функционалом.

Первый вариант дороже будет сам понимаешь.

XoFfiCEr ★★☆☆
()

Добрый день. Для выгрузки данных из Quik в БД я использовал протокол ODBC. Связка эта работала под линуксом. Под виндовсом проблем вообще ни каких нет.

В качестве сервера БД наверное имеет смысл использовать Postgress или mySQLMariaDB?

Postgress более функциональный. И быстрый если просто писать в базу данных и читать с нее. Не удаляя и не обновляя данных. Если необходимо часто обновлять и удалять данные, то только Мускуль.

И может вообще стоит всё взаимодействие с демоном вести через создание записей в БД?

В терминале quik должна работать скрипт, который будет читать из базы данных данные и как-то их интерпретировать. Я когда-то писал бота для автоматической торговли. Выгрузка из терминала quik происходила через ODBC протокол в базу данных, скрипт quik запрашивал у бота данные по протоколу http. Если приходила 1 или 0, скрипт ставил заявку на покупку или продажу. https://bitbucket.org/dicos/moex/src/master/lua/server.lua

Но контрольная утилита нужна в любом случае для получения демоном временного пароля для проведения транзакции.

Зачем?

И как вообще с заклонностью в РФ по написанию и использованию такого клиента?

Да нормально с этим. Наоборот, тарифы брокеры делают специально для спекулянтов.

Если что-то конкретное хочешь, то напиши мне на self@dicos.ru за 20 тыс сделаю

dicos ★★
()
Ответ на: комментарий от XoFfiCEr

Нет, со мной немного иное: если начинается мощное движение в мире одной или группы личностей то соответствующие идеи появляются и в моей голове, это такая разновидность телепатии.

torvn77 ★★★★★
() автор топика
Ответ на: комментарий от XoFfiCEr

Но вообще моя и его идея не похожи, у меня платформа для торговых роботов и средств анализа, у него средство заспамливания биржи.

torvn77 ★★★★★
() автор топика
Ответ на: комментарий от torvn77

с одной стороны я люблю неординарные ТЗ, только если это не связано с блокчейном мать его. С другой стороны конкуренция меньше, с третьей стороны я когда то делал приложуху для indx.money но оказалось что у них api все таки реально не работает. Кстати скажи что такое засампливание такое, что его в гугле нету даже. Уверен что по силам как и твой демон и контрольная утилита.

XoFfiCEr ★★☆☆
()
Ответ на: комментарий от XoFfiCEr

«засампливание», что именно означает это я не знаю, но в музыке есть прибор семплер, который записывает звук и воспроизводит его как часть музыкальной композиции, при этом сам звук будет семплом.
https://ru.m.wikipedia.org/wiki/Семпл

Лично я его ТЗ понимаю так: Надо сделать облако торговых роботов, возможно на разных удалённых компах(чтобы скрыть от биржи наличие между ними связи) и терминал с которого будут слаться команды всем или выделенной группе роботов, возможно у робота будет небольшой AI для оптимизации продажи или покупки, например не выставить позицию разом, а выставить как несколько позиций с разной ценой с целью нащупать максимальную или минимальную цену, при этом позиции с завышенными или заниженными ценами по мере прояснения должны перевыставляться по более адекватным ценам, ну или просто прлдавать на пиках рыночной цены.

Наверное тебе передачу приказов роботам следует сделать аналогично торрентам, сервер отправляет n из k роботов подписанный цифровой подписью приказ, а они их уже рассылают n*n роботов.
Так ты справишся за n+1 цикл, а не n(n+1) цикл если сервер будет рассылать приказ всем роботам сам.

Так же тебе следует предусмотреть то, что отдельные роботы могут быть недоступны или вообще оффлайн.

Ну а порядок рассылки сообщений роботами можно сделать завищащим от их номера, например робот с номером m<n рассылает сообщения роботам от n(m-1) до m*m, ну а свой номер и ip роботов получателей он будет узнавать на управляющем терминале, на котором он будет регистрироваться при перезапуске.

Ну или сделай dht сервер, робот на него заходит и получает наименьший из незанятых id, после чего ищет робота с id меньше своего у которого есть свободное место для отдачи приказа и собирает список роботов с id больше своего для передачи им приказа.
При этом терминал в сети регестрируется как робот с наименьшим id который для него резервируется на dht сервере, хотя это позволит легко найти терминал.

torvn77 ★★★★★
() автор топика
Последнее исправление: torvn77 (всего исправлений: 1)
Ответ на: комментарий от XoFfiCEr

Есть ещё вариант что он хочет не цену продавливать, а продавать большое количество акций кучей мелких лотов и вебапи биржи зарегистрировать нужное количество действий с одного аккаунта и он это пытается обойти большим количеством договоров.
Последнее не криминал в отличии от попыток продавить цену методом заспамливания, но очень на неё похоже и за то и за другое биржа может дать пиздюлей(особенно за первое) и возможно не только ему, будь осторожен.

torvn77 ★★★★★
() автор топика
Последнее исправление: torvn77 (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.