facevalue
facevalue личный блог
02 апреля 2017, 00:41

Кодинг

#region History
Первый подход к коду я совершил в 9-м классе, когда были такие черные YAMAHA в домах Юного техника (кто в курсе о чем я — плюсуем). Это был Бейсик и Турбо Паскаль. Но тогда я понял что «это не мое», и забыл.

Второй подход был в 2010-м году, когда я с коллегой решил запилить первого робота. Он пилил, я придумывал. ) Ессно, всё ничего не получилось. ) Хотя был получен бесценный опыт, пройдены поля граблей и на лбу появилась титановая пластина. Тогда я научился более менее читать код, но попытки что-то закодить приводили к тому, что я не мог толком понять даже как появляется этот долбанный Hello World.

Потом был 2012-й, тогда я всерьёз сошел с ума, и написал целых три программулины. Одна умела парсить тики в нужные ТФ, вторая — это знаменитый All Prices, третья была… Уж и не вспомню. Сказать что этот код тогда написал я — нет. Меня пытался выучить этому ремеслу один очень хороший человек, и я буквально под диктовку писал код. Естественно, без его сопровождения I could barely make it to Hello World. Зато научился делать кнопочки в WPF. ) И… несказанно усовершенствовал свои навыки чтения кода.

В новом проекте я с легкостью статиста с 40-летним стажем руководил разработкой и созданием ряда алгоритмов, ничего не понимая в написании кода, охотно и успешно исправляя его «неровности». Можно сказать, что это был дубль два.
#endregion

#region LUCK
Тут стоит оговориться, что мне посчастливилось увидеть как пишет код настоящий профессионал. Нет, гений. Признанный не мной, а многими тысячами его коллег и крупных заказчиков. Это не просто «типакакстроитькод». Это те самые тонкие ноты, мотивы и прекурсоры, которые рождали хороший код. Считаю, что это послужило для меня первой настоящей мотивацией однажды таки научиться кодить, а не быть TE (техническим инженером). Я ночами сидел и делал документацию для нашего софта, комментировал каждую строчку кода… Но мой лингвистический ум отказывался принимать кодерскую действительность. Собственно, как и с миром финансов в свое время — я месяц въезжал что такое волатильность. Но это уже в другой истории....
#endregion

#region The Thing, The Story
Так, мои попытки написать рабочий код с очередным невероятным ошеломительным успехом провалились. ))) С ХелоуВорлд я конечно разобрался и мог воспроизвести. Но код как навык был отложен во второй ящик снизу.

И вот недавно, приводя тут свой капиталистический участочек в порядок, я перестарался, и проснулась позвоночная грыжа. Та самая, от которой любое движение тела превращается в адскую муку. Пролежав два дня аки мЭртвый, я взял ноут и решил а не покодить ли мне код? Для этого я, чтобы не огорчалась душа надеждами, сишарпить решил на Mono под Ubuntu 16.04 (тут сейчас много у кого из кодеров выпадет попкорн из рук и разольется кока-кола, но Вы главное читайте дальше))...

/*ЛО (Лирическое Oтступление) Стоит отметить, что до сих пор я не увидел ни одной книги по программированию, которая была бы написана для обычных людей. Все эти трактаты написаны для того, чтобы из толпы выдергивать всяких Нео и делать их служителями культа. Все книжки для чайников призваны отбить любое желание мотивированного человека что-то программировать.*/

Гуглируя какой-нибудь курс онлайн, который бы немного отвлекал от боли в спине, я нашел две стоящие вещи. Первая — это Solo для Android (есть и простой онлайн, как оказалось). Настоящий протестантский труд в "темрявi" православия. Второй — ресурс mycsharp.ru, который сделал какое-то невероятное чудо...

Итак… На Mono начал работать первый код, и… Я ЧЕТКО ПОНИМАЛ ЧТО Я ДЕЛАЮ. Строчка за строчкой. Так я провел около недели, по 16 часов с ноутбуком в обнимку, прерываясь на сон и спагетти с мясным соусом.

Позже, буржуйские лекарства сделали свое дело, и уже через неделю я с терпимыми болями сел за свою башню. "Внезапно" оказалось, что код из Mono запускается на кошерных компах только через отречение от веры. ) Поставил VS2017, переписал туда свои начинания, и они… РАБОТАЛИ!

Раз пошла такая пьянка… Я решил, что грешным делом надо написать транслятор тиков из ниндзи в ТСЛаб. Мол, проверим навыки в хардкодинге. Нашел чей-то корявый код, переписал его, И БЛЪВУАЛЯ! Реал тайм СМЕ в ТСЛаб без коннекторов!

Душа в этот момент выла и кричала, мозг от одного вида кода уже дымил, и я с целью отдыха последних двух бедолах на пару дней погрузился в кубики. Накропал две стратежки, которые торгуются руками, и… Вроде как все начало работать. Я даже был думал, что кодить в следующий раз сяду неизвестнокогда. Ан-нет, и тут мне судьба указала верный путь! ТСЛаб вдруг сломался. В один момент обработчик отказался работать из формульного кубика. Напрочь. Бубны, форумы и пост/молитва не помогли, а обложить тестами и логами там все хозяйство невозможно (не предусмотрено религией). Только если с бубнами повезет.

Денек я погоревал, грусть была сильной, и саданул я граппы 0,5. И проснулся с новой мыслью… А не послать ли мне наЪ кубики? (Хотя уважением очередным к создателям сабжа я проникся) Засучив рукава, закодил ОСОЗНАННО отдельную парсилку тиков в нормальный DateTime. Потом, снова пихал историю в ТСЛаб, и когда эта самая история начала глючить, я понял, что на код я потрачу МЕНЬШЕ времени, с учетом чтения всяких RTFM, чем на кубики. Закодил саму стратежку. Потом тщательно закоментил код, чтобы это чудо осталось в истории (я тогда еще не верил своим глазам). СлЕдом решил — «сгорiв сарай, гори й хата» — портирую-ка я ручную логику в «алгоритмпростенький» и напишу-ка я блок управления ордерами… Три дня и три ночи (по факту, не аллегория) я просидел за компом в обнимку с кодом. И...
#endregion

#region FINAL
КОД РАБОТАЕТ. В режиме реального времени. В Пятницу на тестовом счету отпахал сам, я не прикасался. Сделал все именно так, как сделал бы я, сидя перед башней. Описать чувства и ощущения невозможно. Чистейший кристальный эндорфин, замешанный на тестостероне. ) Long lasting effect.

К чему я… Не сдавайтесь. Результат настоящих стремлений — это то, из чего должна складываться настоящая жизнь.
#endregion
40 Комментариев
  • Антон Иванов
    02 апреля 2017, 01:09
    Уважаю. Моя мечта, на которую еще нет времени. Строю домики пока из кубиков, спасибо ребятам из TSLab!
  • nbvehrfr
    02 апреля 2017, 05:13
    молодец, чо!
  • И кто-то ещё будет меня пытаться убедить писать робота дабы автоматизировать моё жмакание кнопок пальчиками?

    Ага! Щас! 
    • Чужой
      02 апреля 2017, 08:16
      Вестников,  сливать бабло самому = это такой адреналин
  • 100 ik
    02 апреля 2017, 08:10
    хорошо передано состояние творческого запоя...
    увы я не програмер…
  • Чужой
    02 апреля 2017, 09:49
    так сдаваться или не сдаваться?
  • Казмирук Александр
    02 апреля 2017, 10:03
    Круто!
  • Валет
    02 апреля 2017, 10:22
    Феноменально! Иногда мне хочется оказаться, как Биатрикс Кидо, из «Убить Билла», в распоряжении хорошего учителя-мучителя, чтобы не я, а он меня заставлял работать. Сколько не брался за программирование, всегда сдавался. Хотя и были успехи, ни кем никем не оцененные, впрочем. 
    Верю, что мозг гибче, чем я ожидаю, но конкретное непонимание уровня звезд программинга и зависть к ним мешают развивать сии навыки. Вы молодец!
  • Фыва
    02 апреля 2017, 10:30
    Reshpekt
  • Тимофей Мартынов
    02 апреля 2017, 10:47
    А почему:
    Первая — это Solo для Android (есть и простой онлайн, как оказалось).

    Насколько я понял, Соло — это ряд обучающих курсов по разным языкам
    Там вроде нет Андройда как такового
    • Mister KoK
      02 апреля 2017, 11:33
      Тимофей Мартынов, он, наверное, приложения из маркета имел в виду.
      play.google.com/store/apps/developer?id=SoloLearn
      • Тимофей Мартынов
        02 апреля 2017, 12:00
        Mister KoK, ааа
        типа приложение для андройда, которое учит программированию
        понял
  • Replikant_mih
    02 апреля 2017, 11:13
    Написано прикольно, по содержанию близко), тоже несколько попыток предпринимал, тоже так же радуют даже небольшие результаты, смотришь на результаты как на магию)
  • Медленный Торопыжка
    02 апреля 2017, 11:41
    Счастливчик. Желаю успеха. Мне вечно не хватает времени и терпения.
  • Friendly Deep Space
    02 апреля 2017, 12:02
    Спасибо за опыт) Сейчас испытываю примерно то же самое. То что нужно бывает найти трудно, проще и выгодней начать учить язык и писать самостоятельно.
  • avror
    02 апреля 2017, 13:52
    Спасибо за интересный пост.
  • SMT
    02 апреля 2017, 14:09
     В Пятницу на тестовом счету отпахал сам, я не прикасался. Сделал все именно так, как сделал бы я, сидя перед башней. Описать чувства и ощущения невозможно. Чистейший кристальный эндорфин, замешанный на тестостероне. )

    У меня были похожие чувства, после написания моего первого робота.) 
     Не только кайф от того, что достиг цели, но и
      то чувство колоссального качественного подъема, когда ты вырастаешь из ранга  одноклеточного  (тот кто на жопе сидит и тыкает кнопки по стратегии)  в ранг творца.
  • Don Constantine
    02 апреля 2017, 21:26
    а можно подробнее про коннектор? Вы написали коннектор TSlab к платформе Ninja Trader? А datafeed? Любой через платформу NT? А  на прямую с того же IQfeed в TSlab нельзя получать? А исполнение ордеров? у любого брокера через NT? Может я чего-то не понимаю, получается все платные коннекторы которые предлагает TSlab лажа? Можно самому написать коннектор к Quick или Interactive  brockers и не платить абонентскую плату?
  • Чёрный Трейдер
    02 апреля 2017, 23:16
    Мужык, ты ошибся блогом. Это надо было в Хабрахабр отправлять…
      • Don Constantine
        03 апреля 2017, 06:18
        facevalue, теперь мне понятно. Спасибо

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн