1

Тема: КЛУА (Как Лишиться Удовольствия Ат [программирования])

Привет всем.
Я прогал на Паскале, потом немного Ардуины (С++), потом на чистом LUA  математические вычисления почти год, сейчас питоню с полгода.
Ну не сказать, что совсем Вася.
Всё ниже - это, конечно, шутки ради, но шутка накипевшая smile
Запикивал всё, что мог изо всех сил smile

QLUA
(КЛУА – Как Лишиться Удовольствия Ат [программирования])

- Привет, КЛУА! Как с тобой общаться? О! Есть message и зачем-то еще PrintDbgStr. А, понял. message создает окно сообщений. Нее. Не удобно. Давай PrintDbgStr(“Hello word!”).
- [ничего не происходит]
- Что такое… Хухл, где мое сообщение?
- А оно в потоке сообщений операционки. Скачай, например, вот эту прогу, чтобы их видеть.
- ??? КЛУА, у тебя же есть окно вывода ошибок интертрепатора! Нафига ты сообщения кидаешь в операционку то?
- А мне пофих. Или так, или постоянно закрывай окошки message

- Лааадно. Дай мне список всех сделок.
- nil
- ??? Документация!
- А надо их сначала заказать в КВИКе.
- ???. Ну фиг с ним, ладно. Заказал. О! Тут еще есть заказ котировок! Это мне тоже понадобится. Заказываем.

- КЛУА, дай мне стакан по ЧеснокОйл (CHKOH)
- Скажи класс
- Чё это???  Откуда я его, блин, знаю?!
- Скажи класс. Иначе не могу.
- Почему, когда я торгую ручками – он не нужен, когда торгую в телефоне – он не нужен, на сайте – не нужен. Везде берется какой-то по умолчанию. А тут тебе это, вдруг, стало важно? Просто продай мне акцийу! Где его взять то???
- getClassesList()
- ОК, дай мне эту таблицу all_classes = getClassesList()
- На тебе строку через запятую! И дербань ее на компоненты сам!
- Че так грубо то? Я csv просил штоле? Почему не в таблицу? Ну ладно. Как теперь из этого класса sec_code’ы получить?
- getClassSecurities(class_code)
- Ладно загоняем в for.
- На тебе опять строку через запятую! Бугагага! Дербань опять!
- Я тебе мальчик штоле так часто дербанить?! Опять привет рекурентка…
Класс AAA, тикер CHKOH – это твоё?
- Нет.
- Класс AAB, тикер CHKOH – это твоё?
- Нет.
- Класс AAС, тикер CHKOH – это твоё?
[прошло -полгода- полсекунды]
- Класс XYZ, тикер CHKOH – это твоё?
- Да.
Ништяк, хоть класс нашли.

- КЛУА, давай сначала. Стакан по ЧеснокОйл (CHKOH, XYZ)
- nil
- ??? Я тебе тикер дал?
- Дал
- Я тебе класс сказал?
- Сказал
- Дай стакан
- nil
- ??? ДАЙ. МНЕ. СТАКАН!
- nil
- Да что такое то?! Хухл, где стакан?
Форум: А патамушта нужно было на стакан подписаться!
- Чё? КЛУА, твою мать! Я у тебя прошу стакан. Это значит, что он мне, блин, нужен! Нахрена мне на него еще раз подписываться?! Я в КВИКе УЖЕ заказал получение котировок.
- nil
- Да твою же мать то! Subscribe_Level_II_Quotes(XYZ, CHKOH). Давай уже стакан!
- На тебе таблицу!

- Ага! А че не строкой?! Ну наконец-то… Документация, чё там в таблице?
- Поля: bid, offer, bid_count, offer_count
- Нахрена мне bid_count, offer_count, если я могу получить это простым #bid и #offer??? Ну да фиг с ним. Кстати, индекс интересующей строки то где вставлять?
- Угадай smile
- Че за шарады, документация?! Блин, [пара тестовых выражений]. О! Нашел! КЛУА, дай мне первые предложения по покупке и по продаже.
- На
- А че разрыв то такой большой? Я же вижу в КВИКе в стакане он не такой. Твою мать, КЛУА! В стакане меня в первую очередь интересует центр стакана. Логично?
- Логично
- Почему тогда самый вкусный offer – это первый, а самый вкусный bid – это последний?!
- А мне пофих! Мне удобно тупо по возрастанию сортировать
- Ну фиг с тобой! У меня же есть специально обученное поле bid_count! Дай мне bid[bid_count].price
- indexError
- Да как так то?! Мать твою! Дай мне, сцуко, bid[bid_count].price!!!
- indexError!!!
- &^%$!!! Сколько бидов в стакане?
- двадцать
- У тебя, что, с нуля индексация?
- Нет, с единицы
- Дай мне тогда bid[20].price
- 4587
- ??? А bid[bid_count].price?
- indexError
- Да че за хня??? For, давай по порядку все биды через ipairs.
- [нормальный список от 1 до 20]
- ??? bid_count, ты что, строка штоле?  PrintDbgStr(bid_count)
- Нет, число: 20.0

- Че???!!! Дробное количество???!!! Нупачиму???? Нахрена мне вообще bid_count, если я не могу им индексировать???!!! Ок. [медленный выдох]. ЛУА, просто. Округли. Бид. Каунт.
- Это как?
- Блин, ну округли прос…
- Чё это???
- Это же базовый навык любой математической библиотеки!
Справочник ЛУА, как округлять?
- Никак
- Твою мать… function round(number, accuracy). Полезная функция. Пригодится еще здесь, вот тут, и еще вот здесь.
- Всё? Теперь умеешь? Давай лучший bid
- На

- Алилуйа!!! Ну наконец-то!!! Так. Операции получать умею. Стаканы получать умею. Загоняем всё в main(). Так. quotes.offer[1].price…
- indexError
- *?:%!!!! %$#@$!!! Да че опять то??? Стакан есть?
- Есть
- Грёбаный код класса получила?
- Получила
- Транзакции идут?
- Идут
- onQuote() есть?
- есть
- В чем тогда дело?
- После запуска main() по стакану CHKOH еще не было изменений, поэтому onQuote() не сработал, поэтому таблица пустая.
- Б…ь!!! С…а!!! Как мне его получить вот прямо сейчас?
- Никак. Ну или можешь в КВИКе создать окно со стаканом CHKOH, найти где-то id этого окна и дербанить оттуда.
- Че, каждый день ручками создавать окна?! Еще скажи и торговать тоже ручками! Нахрена мне тогда вообще код нужен?!
- Мне пох! И вообще indexError ну или nil.
- Х%й с тобой. Добавим проверку заполнения таблицы

- Ошибка нах! Ты почему мне в round(number, accuracy) nil подсовываешь?!
- ??? Откуда? Из какой строки?
- Не знаю. Мне пох вапще. Ошибка в round.
- КЛУА, тебя специально создали, чтобы зае…ть и трейдера, и программиста?
- nil
- нунах… на завод уйду…
- indexError

Почему так всё через ж..у то? Или я чего-то не понимаю?

2

Re: КЛУА (Как Лишиться Удовольствия Ат [программирования])

Накипело smile

3

Re: КЛУА (Как Лишиться Удовольствия Ат [программирования])

Привет! Это меньшее из всех зол

4

Re: КЛУА (Как Лишиться Удовольствия Ат [программирования])

kalikazandr пишет:

Привет! Это меньшее из всех зол

А что - злое зло? smile

5

Re: КЛУА (Как Лишиться Удовольствия Ат [программирования])

Тема про строки в стакане интересна сама по себе, вынесена отдельно
https://quik2dde.ru/viewtopic.php?id=345