1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.

Программирование с нуля (бот). С чего начать?

Тема в разделе "Программирование", создана пользователем Pashtet, 14.02.18.

  1. Pashtet

    Pashtet Активный участник

    37.035
    5.162
    В общем, уже ДАВНО хочу занять свою голову программированием. В основном, больше для общего развития. Но все ни как не выходило. Так я устроен, что не имея четкой цели, не могу себя заставить что-то делать. А просто изучить тот или иной язык - это уж ОЧЕНЬ расплывчатая цель...
    Теперь, вот, вполне себе образовалась цель. Программа, которую я бы хотел иметь и которой, в нужном мне виде, не существует в просторах инета :)
    Это торговый биржевой бот. Их создано МНОГО и платные и бесплатные. И локальные и работающие на серверах. Но все, что пробовал, все равно, чего-то не хвататет. Какого-то мелкого функциоанала, или же, алгоритм работает не так, как я хочу.
    В общем, хочу сам его написать :). Сроки не важны, важен процесс и результат.
    По этому, хотел бы проконсультироваться у ГУРУ кодинга, с чего начать, и в чем это дело проще писать.
    Хочу локальную версию работающую под виндой. API биржи чаще всего выкладывают в java script, хотя есть и другие варианты.
    Как я для себя понимаю. Для начала, нужно написать некую оболочку, желательно графическую, для работы программы. Что бы были окна со всякими там параметрами, которые будут влиять на работу.... Как и в чем лучше писать?
    Так же, видимо, будет небольшая динамическая база данных (Валюта, величина ордера, цены по стакану и т.д.). Стоит подключать что-то типа MS SQL, лепить какую то свою СУБД или для данных целей, вполне хватит обычных переменных и массива данных...?
     
  2. Pashtet

    Pashtet Активный участник

    37.035
    5.162
    Опять же, в чем лучше "лепить" логику программы для визуализации?
     
  3. legatus

    legatus Активный участник

    7.417
    3.907
    Зачем? Биржевой бот должен работать в режиме 24\7.

    Это не 'для начала', а в конце.

    Самого бота можно написать на чем-то вроде Python. Запускаем бота на сервере. Приемлемый VPS можно взять за $5.
    Создается простенький API.
    Визуальное взаимодействие с ботом происходит через веб-интрефейс. Делается за пару дней.
     
  4. Монтажник

    Монтажник Активный участник

    6.758
    422
    php. Популярные биржи предоставляют api, которые параметры передаешь и всё. EXMO начинал под себя писать, да так и забросил.

    Хочешь в винде работать, VB 6. Просто, изящно, и со вкусом. Если под себя, то и vps не надо. апач (денвер) и впегёд!
     
  5. 3aвулoн

    3aвулoн Активный участник

    12.986
    1.340
    и как этого добиться? )
     
  6. Монтажник

    Монтажник Активный участник

    6.758
    422
    Кроном. не? К примеру. Заходишь в интерфейс, смотришь что там у тебя за лоты крутятся. То есть. настроил ты бота на стратегию лонг. Нажал сохранить он работает. Раз в определенное время запрашивает инфу об ордерах, если исполнился по id то ставит новый ордер. Поставил ордер и проверяет его исполнение.

    Ну или бесконечный цикл, в котором проверка идёт, появилазь запись в БД о том, что ордер исполнился, goto то выход, нет БД, смотришь появился ли файл в директории. Вообще ничего сложного нет в этом всём. Я БД разрабатываю сейчас, раньше такие задачки решал, скорее всего на гитхабе уже лежит что-то похожее.. А потом уже и красоту можно наводить.
     
  7. Дмитрий Н

    Дмитрий Н Активный участник

    2.120
    396
    винда и 24/7? хмм... ну может быть действительно нужна работа только неделю или уже отменили 40 с гаком дней работы без перезагрузки у винды?
     
  8. heroin

    heroin Участник

    192
    2
    Знакомые ребята, для этого пользуются пайтон
     
  9. legatus

    legatus Активный участник

    7.417
    3.907
    При чем тут Винда?
    Гонять бота 24/7 на домашней неудобно и дорого. Лучще VPS-ку под это дело запилить.
     
  10. Дмитрий Н

    Дмитрий Н Активный участник

    2.120
    396
     
  11. Pashtet

    Pashtet Активный участник

    37.035
    5.162
    Больше вопросов чем ответов....
    Почему хочу оболочку? Для визуализации процессов торгов... Хотя, конечно, поначалу можно все в лог писать. Просто в программировании по современным меркам полный ноль, и больше хочу начать изучать какой либо язык, но что бы сразу с делом.... Вот и думаю , с чего проще начать
     
  12. legatus

    legatus Активный участник

    7.417
    3.907
    А чем веб-интерфейс не подходит? И делать проще, полно готовых админок, за день запилить можно, и полностью кросплатформенно. Смотреть можно с любого подключенного к Сети устройства. И легко можно подключить всякие полезности вроде информирования на CMC\EMAIL.
     
  13. Zuka58

    Zuka58 Активный участник

    4.335
    800
    ого.. и где ты был все эти годы? с тех пор, как отменили))
     
    sema нравится это.
  14. 3aвулoн

    3aвулoн Активный участник

    12.986
    1.340
    Это как? Если (например) с твоего сервера сервер биржи в этот судьбоносный для битка час недоступен?
     
  15. Монтажник

    Монтажник Активный участник

    6.758
    422
    Ежели недоступен то и любой бот работать не будет. Чтобы обезопасить себя от таких рисков надо в их офисе по старинке кричать и покупать.
     
  16. 3aвулoн

    3aвулoн Активный участник

    12.986
    1.340
    @Монтажник, чтобы обезопасить себя от таких рисков нужно писать не бот а ботнет. Только и всего. Ну или запасаться рецептами на сильнодействующие барбитураты.

    зы (я ж знаю что мне сейчас скажут) идея с двумя-тремя серверами достаточна, но не красива и не перспективна.

    зы2. и пожалуйста обратите внимание на цель ТС - НАУЧИТЬСЯ программировать....
     
  17. Монтажник

    Монтажник Активный участник

    6.758
    422
    Хостинг в Голландии на леазернет, тьфу-тьфу-тьфу за год что я там админю ни разу не падал. Один косяк был, на 30 минут, но там оплата через пей пал долгая. ДА и бегетовский хостинг хороший. Плюс на php в том, что с любого телефона, любого компа можно зайти и всё настроить, посмотреть.

    Вот будет время. на гитхабе полюбому уже что-нибудь валяется. Самые популярные биржи api предоставляют. Там на боте остается только придумать логику работы самого бота.

    Вон выбирай любой язык и пиши.
     

    Вложения:

    • api.png
      api.png
      Размер файла:
      18,1 КБ
      Просмотров:
      864
  18. 3aвулoн

    3aвулoн Активный участник

    12.986
    1.340
    @Монтажник, Вы, как программист и админ, отличаете термины "хостинг упал" и "бот паштета не может достучаться до Урюпинска"?

    даже чисто случайно "паштетов" сервер попадет под раздачу (никто же не сомневается что ему выделят новый девственный адрес?) и проснется "паштет" без штанов. вариантов миллион.

    Кроме того, скажите мне как художник художнику, а как вы мониторите, "упал" ваш хостинг или "не упал"?
     
  19. Монтажник

    Монтажник Активный участник

    6.758
    422
    Яндекс.Метрика - уведомления. Плюс при падении от предыдущего дня на -10% трафика скрипт шлёт смс. Это 15 минут не работы сервера.

    Паштет также юзает сейчас бота платного, который крутится где-то на VDS. Проблем там нет.

    Я также юзаю ботов которых юзает паштет. только демо-версии вообще с одной стратегией, раза 2 были отвалы, и то, по программисткой части когда они что-то внедряли. Биржи стараются не блочить ботов, не наглых, которые запросы шлют в разумных пределах. Я также под себя начинал писать. Закончил на получении активных ордеров. И забросил, а потом вообще не нашел где это.

    С целью научиться - это PHP. писал ленивый для ленивых этот язык.
     
  20. 3aвулoн

    3aвулoн Активный участник

    12.986
    1.340
    Как объяснить зулусам, что нельзя попасть стрелой в Солнце?

    Когда на бирже начнется серьезная движуха и вы 15 минут (хотя для этих целей Я метрика сама по себе порнография) не узнаете что ваш бот не при делах, а потом еще нное количество времени лихорадочно будете соображать кто виноват и что делать - получится отличный ужастик.
    Пока не было.
    Вы вообще не понимаете, о чем я говорил. причем тут САМА биржа?
    программирование сродни поэзии. какой язык лучше всего учить, чтобы стать поэтом?

    ну а набить странную последовательность команд в странных целях.... это из серии "Волгоградского каркасного строительства". Те "строители" тоже все сплошь и рядом заявляют что "проблем пока не было"...
     
  21. Монтажник

    Монтажник Активный участник

    6.758
    422
    Вылетел скрипт с ошибкой письмо на мыло. Мыло в телефоне. У меня на мыле отдельная папка, шухер называется. В телефоне когда в эту папку через фильтр приходит письмо, начинает звенеть. И семья знает, что я либо за комп пойду, либо ещё куды. Это 1 минута. Куда проще то?

    Иногда не только я не понимаю, объясняйтесь точнее, что вы хотите спросить. Боитесь что отвалится сервак, боитесь что не дойдет запрос, а если сама биржа ляжет, то что тогда делать?
    1. Отвалился сервак, включи денвер на компе, запусти парсинг главной страница, пришел не 200 ответ, бей тревогу.
    2. Боитесь что стрела не долетит, ваш скрипт пистьмо пришлёт.

    Все эти ошибки, спокойно можно заллогировать и "ждать" в режиме онлайн.
     
  22. 3aвулoн

    3aвулoн Активный участник

    12.986
    1.340
    Да хоть шухер хоть ***** папку назовите. Пока вы сообразите, как восстановить работоспособность вашего скрипта на другом сервере - поезд на бирже давно ушел ВМЕСТЕ с вашими деньгами.

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

    Ну и интимный вопрос - вы в кино, баню или ресторан ходите?
     
  23. Монтажник

    Монтажник Активный участник

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

    Когда начнется памп, или ещё что, ботов отключают, и руками работают. Что там соображать? Можно написать вообще без мискла, копировать вставить, и у вас все работает. для шизофреников можно тестовых набрать аккаунтов на серваках, и у вас 5 серваков, которые все сразу врят ли заблочат, и хоть одна стрела то и долетит.
     
  24. 3aвулoн

    3aвулoн Активный участник

    12.986
    1.340
    дежавю: Как объяснить зулусам, что нельзя попасть стрелой в Солнце?

    умываю руки. и правда добрый совет Паштету - если хотите сохранить рассудок в здравии - в вопросах "программирования" держитесь подальше от @Монтажник'а.
     
  25. Монтажник

    Монтажник Активный участник

    6.758
    422
    Если они такие же шизофреники, то никак. У вас и майнинге постоянно должно что-то падать, зулусы то не дремлют!

    А если у Паштета винда ляжет, то как быть зулусским стрелам? Пускай начнёт писать свою винду с блекджеком и плюшками. Попутно процессор свой придумает, и компутер новый спаяет.
     
    Последнее редактирование: 18.02.18
  26. Pashtet

    Pashtet Активный участник

    37.035
    5.162
    Это для кодера с опытом :) Для меня, полгода пилить :)

    Мир вам люди, все больше посматриваю в сторону JavaScript или Node.js или вместе... С одной стороны современный, развивающийся язык. Можно и для браузера, и для операционной системы любой, и под сервер написать приложения....
    Думаю, остановиться на них. Какие учебники дял начинающих лучше всего? Буду начинать с примитива "hello world" :)
     
  27. Монтажник

    Монтажник Активный участник

    6.758
    422
    Если хочешь java script то лучше в связке php + ajax. будет у тебя без перезагрузки страницы все работать.
     
  28. Jester

    Jester Участник

    104
    3
    Для начала немного теории или так скажем наводка.
    1. У биржи свое rest api, по простому набор http запросов, которые возвращают ответ в виде json
    (такой общепринятый форма представления данных в текстовом виде) - почитать :)

    2. Что надо первое пощупать, сделать, попробовать на любом языке программирования написать веб клиента, где отправляешь запрос и получаешь ответ
    как правило уже реализованы эти клиенты в каком то виде в библиотеках. (HttpRequest, Webclient)

    3. На чем бы делал я это Python хотя я его не знаю :). Есть бесплатная IDE PyCharm Community Edition.
    И самое главное с чего бы я начинал это уже поискать, уже написано все :). Исходники биржевого бота на питоне я находил.

    4. База данных не нужна от слова совсем, можно все держать в памяти. В случае перезапуска программы, все можно считать опять с биржи.

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

    P.S. В плане развития бот это интересно, в плате заработка это утопия.
     
  29. Иной гость

    Иной гость Активный участник

    22.222
    3.415
    А как json с питоном? Крон раз в пару секунд?

    PS. Я знаю что меня заплюют, но бота, который постоянно в памяти, логичнее писать на компилируемом чем-нибудь, типа Си или (айяйяй) golang'е :)

    Хотя у питона тематических библиотечек конечно вагон и тележка
     
    Последнее редактирование: 22.02.18
  30. топаз

    топаз Участник

    488
    32
    JavaScript как первый язык- это мягко говоря безумие ))))))))))))))

    Для изучения программирования скорее нужно:
    1) "Пустой" классический язык на мой взгляд вроде С или С++,конечно там много будет вопросов(в частности указатели) ,но там мало "лишнего",отвлекающего в сравнении Javascript или PHP,которые якобы а-ля лёгкие для изучения
    В С++ добавлены классы,несколько иное мышление,но зато язык С ещё более пустой что облегчает в какой-то степени понимание программирования.
    Классика нужна для ознакомления с программированием,далее по направлению.
    2) Самое главное. Хорошую литературу т.е. автора. Что нелегко. Однако попробую.
    Объектно-ориентированное программирование в С++ Р. Лафоре.
    Читается легко,несмотря на страшное название кажущееся для тех кто имеет уровень,неплохие примеры на мой взгляд,так например связанные с картами т.е. тасование и выбор карт всех мастей и т.д..
    Почитай отзывы,качни в инете,начни читать,не понравится,поищи что получше.

    или

    Как программировать на С. Пол Дейтел, Харви Дейтел
    В книге Дейтелов,полкниги рассказывается о С, другая половина переходит на С++ ,однако по мне так Лафоре будет проще восприниматься.



    В JavaScript всё является объектом, огромная куча объектов которые надо запоминать, то что они умеют,свои исключительные непонятные принципы наследования/построения классов,для новичка. Отсутствие хорошей литературы и автора в виду того что данный язык используется как правило кусочным кодом , небольшими несвязанными сценариями и т.д.
    Жесть просто.

    А, ну Стивен Прата неплохо пишет,давно уже пишет.
     
    Последнее редактирование: 03.03.18