Владимир (Все сообщения пользователя)

Выбрать дату в календареВыбрать дату в календаре

Страницы: Пред. 1 ... 22 23 24 25 26 27 28 29 30 31 32 ... 41 След.
Средства разработки многопоточных скриптов в QUIK., OS_Quesha, свидетельство регистрации в Роспатенте № RU 2020612905. Бесплатная для некоммерческого использования.
 
TGB,  Я ещё не приводил своего давнего определения: "Операционная система реального времени - это задача, которая мешает моей задаче работать в реальном времени"? :smile: Хотя пункт третий Вашего определения мне нравится.

По этому определению, кстати веб-браузеры это вовсе не ОС, а, как им и положено, обычное прикладное говно: они не обеспечивают ни "наиболее эффективного использования всех ресурсов вычислительной системы" (а ГРОБЯТ эти ресурсы), ни "требуемый уровень сервиса в определённый промежуток времени" (а виснут почём зря на любом говне), ни "предсказуемого времени обработки непредсказуемо возникающих внешних событий" (иногда даже за клавой не успевают!), ни надёжности (версии меняются как перчатки - примерно с такой же скоростью, как и версии Квика - вот прям сегодня с утра поменял у одного из брокеров (по его предложению) очередное шило на мыло), ни "устойчивости функционирования при сбоях аппаратуры и программ" (они и без сбоев-то неустойчивы!), ни "обработки большого количества входных и выходных потоков данных" - НИ ХРЕНА! Впрочем, как и Windows, которую по какому-то недоразумению до сих пор называют "ОС". :smile:  
string.upper(S) - русские буквы, Русские буквы в верхний регистр не получается сделать в string.upper(S) в Lua QUIK версии 8.13
 
Артем, Лапуль, программисты прошлого В МИЛЛИОН РАЗ лучше нынешнего стада баранов умели пользоваться мозгами по назначению. Это именно НЫНЕШНЕМУ стаду "польза с универсального формата должно быть очевидно даже слепому", а тогда никто подобными "проблемами" вообще не заморачивался - были задачи поважнее.

А вот такой вопрос к стаду "зрячих" КАКОЙ ИМЕННО  "универсальный формат" использовать предлагаете? Что, срочно хлебала захлопнули, умники хреновы? UTF-8? UTF-16? Ещё какой-то? А как насчёт ГРАФИЧЕСКИХ форматов? Их же ВАЩЕ НЕМЕРЯНО! А ну, где ваш "универсальный"? Правильно, В ЖОПЕ!

Между прочим, я встречался с Кеном Томпсоном примерно в то время (где-то в районе 1995 года). И он ни слова не говорил об "универсальном формате"! Ибо для него (как и для любого нормального программиста) это была рядовая задача, довольно занудная и не требующая мозгов вообще. А у вас-то откуда взялись мозги, господа? Я что-то не припомню случая, когда вы их использовали. :wink:  
странное поведение getSecurityInfo("", ticker).class_code
 
Sergey, Где это Вы такое выкопали? Вот, навскидку из этого форума (https://forum.quik.ru/forum10/topic5013/):

Sergey Gorokhov
QUIK clients support
#221.01.2020 10:16:25
Один инструмент может торговаться в нескольких классах.
getSecurityInfo при отсутствии кода класса, вернет параметры инструмента из первого попавшегося класса, но не факт что нужного.
В связи с чем, правильно самому указывать нужный класс
странное поведение getSecurityInfo("", ticker).class_code
 
Sergey, Вы поняли неверно: класс задаётся НА ВХОДЕ.
TABLE getSecurityInfo (STRING class_code, STRING sec_code)
И на выходе он будет именно тем, что был задан на входе. Это не "метод", а именно поле.
string.upper(S) - русские буквы, Русские буквы в верхний регистр не получается сделать в string.upper(S) в Lua QUIK версии 8.13
 
Артем, Кодовые страницы В ПРИНЦИПЕ не могут вымереть - это КЛАССИЧЕСКОЕ программирование  данными, и ничего более простого и эффективного придумать просто НЕЛЬЗЯ. Что до "адекватных людей" - так я тыщу раз видел, как эта шобла кидалась всем кагалом на очередное нововведение типа "плоского мира" (тогда ещё 32-разрядного) или того же юникода или нейросетей, после чего переписывала всю свою "современную" математику на очередную "блестящую идею". КАКИХ там "таких проблем нет"? Огласите весь список, пжалста! На любом программистском форуме, включая этот, идёт сплошной скулёж о проблемах, почти все из которых просто смехотворные. И нет этому конца - программисты вымерли "вместе с динозаврами". :smile:  
string.upper(S) - русские буквы, Русские буквы в верхний регистр не получается сделать в string.upper(S) в Lua QUIK версии 8.13
 
Артем, А я и не обвиняю программистов арки, я даже говорю, что если бы они и были "при чём", всё равно делать ничего не надо.

Я когда-то делал мультиязычные интерфейсы и конвертер из разных кодировок друг в друга, но все они были однобайтовыми (DOS, WIN, KOI, ISO, MAC), а UTF тогда ещё в природе не существовало (или, по крайней мере, никто про него не слышал). И там немало подводных камней! Например, горячие клавиши в меню на другом языке могут быть совершенно другими. Как и размеры строк и самих меню. И я совсем не уверен, что после "макаки" мы не напоремся на какие-нибудь крупные неприятности.
Что бы это значило?
 
Так должно быть уведомление, а его нет! Обычно бывает "инструмент не торгуется" или "обнаружена активная блокировка". Кстати, после моих пяти попыток сам скрипт попытался продать те же акции с тем же успехом, а ещё через час всё же продал.
Что бы это значило?
 
Глюк, описанный в топике, иногда проявляется (сегодня вот был), но теперь он легко лечится, и меня более не интересует. Но вот только что проявилась совсем интересная штуковина, с которой мне пока что не доводилось сталкиваться: заявка "успешно регистрируется", и в ту же секунду снимается, причём молча, без уведомления "заявка снята", в таблице заявок статус "снята", торги идут (я для контроля попробовал продать через скрипт другой тикер - всё прекрасно), но на этот (OII_SPB, Oceaneering International, Inc.) сегодня "что-то нашло": пять раз пытался продать, и все пять раз "очень удачно", с вышеописанным результатом. Кстати, 7 часов назад скрипт уже продавал именно эти акции, и вполне успешно (как и всегда ранее). И чо это за хрень?  :shock:  
string.upper(S) - русские буквы, Русские буквы в верхний регистр не получается сделать в string.upper(S) в Lua QUIK версии 8.13
 
Артем, Если она после этого будет нормально торговать - давайте вырежем! Руками и ногами ЗА! Это торговая система, и она не обязана обслуживать выкрутасы страдальцев по букве ё или по регистру символов. А то загадят софт всяким говном, а потом ещё удивляются, что глючит.
string.upper(S) - русские буквы, Русские буквы в верхний регистр не получается сделать в string.upper(S) в Lua QUIK версии 8.13
 
Артем, НА КОЙ ХРЕН "этот стандарт надо соблюдать"? Кодировка 1251 (как и DOS, ISO, KOI и прочая хрень) - это ТОЖЕ стандарты! И у них, по крайней мере, ОДИН байт на символ! Что могут сотворить нынешние криворукие со стандартом с переменным числом байт на символ, можно только догадываться. К тому же, шрифты к этим стандартам всё равно необходимы! Ну, и как Вы будете воспроизводить японские иероглифы или арабскую вязь? Не занимайтесь ХЕРНЁЙ, господа! ДАВИТЬ надо подобные инициативы! В зародыше! Лично я рассматриваю их как источник дополнительных потенциальных глюков, и ТОЛЬКО так! То со сраной запятой вместо точки не могут разобраться, то со сраной датой, представленной в виде строки... Вот и засирают язык всяким говном. Керниган с Ричи даже printf из языка выбросили! Керниган рассказывал, что хотели включить, мучились, но всё-таки выбросили. Молодцы! Потому-то С и есть ВЕЧНЫЙ язык, что написан гениями, а не тупорылыми пидарасами, которые каждую вдарившую в их головожопу пое... как это в нормативной лексике... каждую лабуду стараются впендюрить в язык. "Творческий вклад", панимаш!
string.upper(S) - русские буквы, Русские буквы в верхний регистр не получается сделать в string.upper(S) в Lua QUIK версии 8.13
 
Артем, Вот токо поддержки юникода Квику не хватало! Квик - это программа ДЛЯ ТОРГОВЛИ! И до тех пор, пока эта часть не заработает как часы, всю остальную херню вроде upper-lower надо вычищать отседова поганой метлой! Как я писал в своей книге (про JS):

Язык JavaScript. Количество никому не нужного мусора просто невероятное! Полное ощущение, что создатели языка ставили своей задачей поиздеваться над программистом и здравым смыслом. Методов-то, методов! В глазах рябит! Ну, очевидным образом anchor, big, blink, bold, fixed, fontcolor, fontsize, italics, lastIndexOf, link, small, strike, sub, sup отправляем на помойку. А charAt, indexOf, substring, toLowerCase, toUpperCase, возможно, ещё на что-то сгодятся. Кстати, у indexOf есть ещё пара нюансов, которые могут оказаться полезными: во-первых, искать может не только символ, но и подстроку и, во-вторых, может искать с определённой позиции (если задан второй аргумент).

Кошмарики с Date: getYear, getMonth, getDay, getHours, getMinutes, getSeconds, getTimezoneOffset, toGMTString, setSeconds и т.д. сведут с ума любого. И, главное – зачем?! Зачем это пользователю? Что, программисту заняться больше нечем?!

Первое же из того, что нам действительно необходимо, повергает программиста в шок. Итак, прошу любить и жаловать – метод charAt: возвращает символ из строки. Синтаксис: StringName.charAt(index); Нет, позвольте – какой ещё «метод»?! Это же всего лишь строка! У всех нормальных людей принято: Symbol=StringName[index]. Так я и думал вначале. Поверил же я в происходящее, когда увидел радостный вопль в учебнике: отныне можно var s=new String("a") – ура, товарищи! Это было реальное потрясение: что же ещё насовали в несчастную строку?

Украденный синтаксис языка С используется приблизительно в том же смысле, и лишь незначительно изуродован. Впрочем, в противном случае JS не просуществовал бы и недели. Самое ужасное, что JS при этом при всём – это всё-таки лучшее из того, что есть на клиенте!

Как оказалось, JS не способен интерпретировать функций, тела которых расположены в переменных – они должны быть явно прописаны в теле страницы. Убей, не понимаю, какая разница – но делать нечего: базовый набор функций придется подгружать на морду путём генерации тела функций из переменных во фреймы виртуальных страниц.

Опера не умеет перерисовывать группу фреймов, а Сафари – наоборот: только группу и может.

Лиса прекрасно всё рисует, но… только в том случае, если страничка будет иметь расширение SVG. Если переименовать её в HTM – девственно чистый лист!

После редактирования браузер quot втихаря заменяет на кавычки. Вот кто тебя просил?! Кавычка (как метаданные) предназначена для конкретного интерпретатора, и тут их сразу пять штук! Кавычка, которую должен увидеть юзер на экране – это вовсе не та кавычка, которую должен увидеть браузер как ограничитель параметра тега. И вовсе не та кавычка, которую должен увидеть интерпретатор JS, для которого она часть тела функции. И вовсе не та кавычка, которую должен увидеть монитор, для которого она разделитель параметров очереди. И вовсе не та кавычка, которую должен увидеть SPS, запихивающий все остальные кавычки на морду, кроме тех, которые он опознает как свои, и интерпретирует соответствующим образом. Проблема вовсе не загнать кавычку в строку, проблема не перепутать их разными итерпретаторами! А тут ещё «интеллектуальный» браузер гадит…

Вам хочется и здесь огрести подобного говна, господа? Мало того, что есть, ещё хочется?
Quik 8.13 функция CreateDataSource возвращает пустой набор данных, если таймфрейм отличается от стандартного., Quik 8.13 функция CreateDataSource возвращает пустой набор данных, если интервал отличается от стандартного.
 
Roman Azarov, Я против реализации этого предложения - это тоже пожелание. :smile:  
Средства разработки многопоточных скриптов в QUIK., OS_Quesha, свидетельство регистрации в Роспатенте № RU 2020612905. Бесплатная для некоммерческого использования.
 
TGB, Не, но каков наглец: К ДРУГУ он обращается ЗА ДЕНЬГИ, а от постороннего человека намыливается получить НА ХАЛЯВУ! :smile:  
Quik 8.13 функция CreateDataSource возвращает пустой набор данных, если таймфрейм отличается от стандартного., Quik 8.13 функция CreateDataSource возвращает пустой набор данных, если интервал отличается от стандартного.
 
Артем, Да я даже не собираюсь разбираться в подробностях! Я здесь уже повидал СТОЛЬКО глюков, что допускаю всё, что угодно. Это раньше оторопь брала от нескольких прерываний на одно событие или от того, что ИНТЕРПРЕТИРУЕМЫЙ кусок кода способен подвесить Квик. В любом случае, чем меньше мусора в софте, тем лучше! И не надо ничего никуда откатывать. А это предложение именно мусор.
Средства разработки многопоточных скриптов в QUIK., OS_Quesha, свидетельство регистрации в Роспатенте № RU 2020612905. Бесплатная для некоммерческого использования.
 
Артем, Это ВЫ считаете это полезным - Вам и платить. :wink:  
Quik 8.13 функция CreateDataSource возвращает пустой набор данных, если таймфрейм отличается от стандартного., Quik 8.13 функция CreateDataSource возвращает пустой набор данных, если интервал отличается от стандартного.
 
Артем, Вот и пусть "занимаются разными частями программы", а не заведомым онанизмом! К тому же, в сложных системах без бутылки не разберёшься, что на что влияет, а что нет. Организация торговли достаточно проста, но здесь столько всего наворочено, что ЛЮБОЕ изменение грозит внесением новых глюков.
Quik 8.13 функция CreateDataSource возвращает пустой набор данных, если таймфрейм отличается от стандартного., Quik 8.13 функция CreateDataSource возвращает пустой набор данных, если интервал отличается от стандартного.
 
Roman Azarov, А я вот против, причём категорически. Основная задача Квика - организация надёжной торговли, и с этим ещё немало проблем. Я понимаю, что реализовать подсчёт свечей (на машине клиента, а не на сервере, естественно) по любым интервалам, в т.ч. нестандартным, несложно. Но зачем засорять софт всяким мусором? К тому же, никому не нужным - даже сам автор этого "пожелания" не в состоянии объяснить, зачем ему это понадобилось!
Quik 8.13 функция CreateDataSource возвращает пустой набор данных, если таймфрейм отличается от стандартного., Quik 8.13 функция CreateDataSource возвращает пустой набор данных, если интервал отличается от стандартного.
 
Владимир, О! Высокое искусство пришло пошло засорять форум! :smile: Бред, мой милый, это голословное высказывание типа: " Почему не стандартные лучше, это надеюсь всем понятно, кто давно и прибыльно торгует".
Бурные потоки бреда
Можно слушать только в среду
Но не стоит, господа.
Хоть сегодня и среда

swerg, Квик-то мог бы, но если верить описанию, что свечи формируются НА СЕРВЕРЕ, то поверить в это просто невозможно.
Quik 8.13 функция CreateDataSource возвращает пустой набор данных, если таймфрейм отличается от стандартного., Quik 8.13 функция CreateDataSource возвращает пустой набор данных, если интервал отличается от стандартного.
 
Rusyan, При чём тут "полемика"? Вы несёте клинический бред,  и при этом отказываетесь отвечать за сои слова. Ну, что же - это ВАША характеристика.
Quik 8.13 функция CreateDataSource возвращает пустой набор данных, если таймфрейм отличается от стандартного., Quik 8.13 функция CreateDataSource возвращает пустой набор данных, если интервал отличается от стандартного.
 
Rusyan, С какой радости я должен Вам верить? Этого не может быть потому, что не может быть никогда!(с) А уж если эти "нестандартные" так Вам дороги, так посчитайте их САМИ! Там программирования на полчаса! И что, все эти "кто долго торгует" за весь этот "многолетний опыт" так и не сумели этого сделать? Так наймите в складчину какого-нибудь студента, если не школьника - он вам всё и посчитает. :wink:  
Quik 8.13 функция CreateDataSource возвращает пустой набор данных, если таймфрейм отличается от стандартного., Quik 8.13 функция CreateDataSource возвращает пустой набор данных, если интервал отличается от стандартного.
 
Rusyan,АБСОЛЮТНО непонятно! С какой радости "не стандартные интервалы дают более прибыльные сигналы на вход и выход"? А если вдруг поверить в эту... в этот, так сказать, спорный тезис, то какого же хрена после "многолетнего (!!!) опыта работы" эти "нестандартные" до сих пор не стали стандартными?
Отладка QUIK 8.13
 
Старатель,
Цитата
Кто-то даже с динамической типизацией справиться не может,
В мой огород камушек, что ли? :smile: Динамическая типизация есть идеологический кретинизм, вне зависимости от умения с этим кретинизмом справляться (очень точное слово, кстати), и место ему на помойке, и только там!

В остальном я согласен с TGB: На мой взгляд, существуют 4 уровня программирования:
1. Аппаратный - его модули зависят от платформы, набора команд процессора и т.п.
2. Системный - тот, который и выполняет, собственно, всю работу, обращаясь при необходимости к объектам аппаратного уровня.
3. Прикладной - вся остальная часть кода разрабатываемого программного обеспечения, за исключением
4. Инструментальный - фактически подмножество прикладного и отличается от него лишь разными требованиями к квалификации программиста.

Так вот: доступ к утилитам первых двух уровней (ядро программного обеспечения) должен быть только у сотрудников арки, ибо они рассчитаны на программиста высокой квалификации, и неправильное использование этого инструментария может привести к серьёзным ошибкам (порча памяти, некорректная обработка прерываний и т.п.) - это внутреннее, интимное дело Квика, и нельзя позволять пользователям или их утилитам "лезть туда своими грязными лапами". А вот объекты прикладного уровня имеют "защиту от дурака" и, следовательно, не предъявляют особых требований к квалификации программиста. Использование инструментального уровня не поощряется, и допустимо лишь при создании компонентов, критичных к скорости выполнения, нестандартной обработке данных и т.п. То есть это уровень для квалифицированных прикладников (или для считающих себя таковыми).

В идеале должно бы быть примерно так...
Quik 8.13 функция CreateDataSource возвращает пустой набор данных, если таймфрейм отличается от стандартного., Quik 8.13 функция CreateDataSource возвращает пустой набор данных, если интервал отличается от стандартного.
 
Артем, Вот уж с чем безоговорочно согласен! Мои 9 интервалов именно такие: от 0.25 до 64 минут. Как и с тем, что "ничего не мешает генерировать свечки с произвольным интервалом".
Quik 8.13 функция CreateDataSource возвращает пустой набор данных, если таймфрейм отличается от стандартного., Quik 8.13 функция CreateDataSource возвращает пустой набор данных, если интервал отличается от стандартного.
 
Старатель,  Я так и считаю, совсем уж "на месте" - прямо в Lua. :smile:  В Квике же рассчитать свечи по любому интервалу почти ничего не стоит (если имеются данные по минимальному интервалу). Только всё тот же вопрос: ЗАЧЕМ? Чем стандартные-то интервалы не устраивают? Ну, допустим, мне их мало - у меня ещё и полуминутные свечи, и четвертьминутные. Но "вверх"-то зачем "нестандарт"?
CreateDataSource возвращает неверные данные
 
Читаешь и диву даёшься...  :smile:

Имеем:

1. Свечи считаются на сервере, и хранятся там ГОДАМИ, т.е. это НЕИЗМЕННАЯ величина, посчитанная ОДИН раз. В том числе, их объёмы, временные отметки и прочая "японская" хрень. А раз так - были там "разрывы соединения или потери пакетов" или нет - какая разница?

2. Все эти данные нужны только для прогнозирования, которое по определению имеет ВЕРОЯТНОСТНЫЙ характер. Следовательно, особая точность в этих значениях не нужна (и даже вредна). А потому сама проблема, вынесенная в заголовок, не имеет значения: ну, возвращает "иногда" - и пущай себе возвращает!

3. Более тяжёлые свечи строятся из более лёгких по простейшему и однозначному алгоритму. Следовательно, если нет ошибок в младших значениях свечей, их не может быть и в старших. И как при этом можно перепутать последнюю свечу с предпоследней - убей, не понимаю! И при чём тут "сделки, попадающие точно на границу свечек"? Они ведь УЖЕ ПОСЧИТАНЫ! ЕЩЕ НА СЕРВЕРЕ ПОСЧИТАНЫ! ОТКУДА, может взяться "обработка в колбеке"?

4. Шаг влево, шаг вправо карается расстрелом: "должен быть закрыт график по тестируемому таймфрейму". А это с какого бодуна? А уж если так - кто назвал эту софтину "асинхронным фреймворком!? :smile:

P.S. Лично я с самого начала считал свои свечки сам (по 9 таймфреймам, начиная с 15-секундного) и по всем тикерам, за которыми следит скрипт (таковых несколько сотен). И это чуть ли не единственное место в скрипте, которое, будучи однажды написано, прекрасно работало и работает до сих пор без сбоев. Ах, да - я же считаю даже не свечи (кому они нужны?), а динамику их изменения (скорость движения), да ещё и в дискретной шкале: курс может а) стоять на месте (это я использую, кстати, для отслеживания ситуаций, когда торги по данному инструменту не ведутся) б) медленно ползти в) нормально идти г) быстро бежать д) лететь сломя голову - всего 9 состояний (с учётом направления). Просто, надёжно (все эти ошибки, приведённые в этой ветке практически автоматом исчезнут!), наглядно (куда там графику до такого уровня наглядности!), и безо всякого CreateDataSource вообще! Всем рекомендую.
Quik 8.13 функция CreateDataSource возвращает пустой набор данных, если таймфрейм отличается от стандартного., Quik 8.13 функция CreateDataSource возвращает пустой набор данных, если интервал отличается от стандартного.
 
Rusyan, В описании сказано:
Функция предназначена для создания таблицы Lua и позволяет работать со свечками, полученными с сервера QUIK, а также реагировать на их изменение.
Не слишком ли жирно будет заставлять сервер подсчитывать свечи "нестандартных интервалов"? :smile:  
iCode – код параметра, выводимого в колонке
 
Артем, Да, "уместно в таком случае делать "безголовый" клиент", который будет принимать от юзеров заявки и давать им квитанции об их исполнении или отклонении. Это БАЗОВЫЙ уровень Квика. Ну, а дать ему дополнительно программный сервис или всякие там таблицы с графиками - это уже конкуренция между разработчиками софта для привлечения клиентов. В любом случае, базовый сервис должен работать БЕЗУКОРИЗНЕННО (по крайней мере, начиная с версии 1.1.1.3). А прочие свистелки и перделки" - это уже имеет значение только при обеспечении этого условия. А на деле что?
iCode – код параметра, выводимого в колонке
 
Артем, Во-первых, западные программисты ничем не лучше наших - был знаком лично с немалым их количеством, в т.ч. с виртуозами, в т.ч. с лучшим программистом мира 1993 года. Во-вторых, вопрос должен быть переформулирован как "вывесить ДАННЫЕ таблицы за пределы окна квика", и он достаточно легко может быть реализован. В-третьих, основная задача Квика - организация надёжной торговли ценными бумагами, и чем меньше он будет уметь ВНЕ этой задачи - тем лучше!
iCode – код параметра, выводимого в колонке
 
Евгений, Вот уж что меня ВААПЩЕ не интересует! Но если очень хочется - способ один: переместить туда необходимые ДАННЫЕ и там снова делать с ними, что хошь. Причём ЛЮБЫЕ данные, а не только сраную таблицу. Тем более, что сервис для визуализации в Квике достаточно убогий.
iCode – код параметра, выводимого в колонке
 
Евгений, ЗАЧЕМ?! Это же ВАШ скрипт создавал эту таблицу! Следовательно, он всё и знает. Это всего лишь таблица визуализации, она только для юзера, а "настоящие" данные должны храниться в таблицах Lua. У меня (как и у Вас, насколько я вижу) каждая строка таблицы соответствует отдельному тикеру. Вы думаете, зачем у меня невидимый нулевой столбец? Там как раз и хранится "настоящий" идентификатор этого тикера в моей Lua-таблице (точнее, дереве), и все необходимые действия с инструментом я провожу там, и ТОЛЬКО там! И там можно делать с ними, что хошь: "выносить за пределы Quik", сохранить в файл и т.д. Я сейчас делаю это каждые 5 минут (на случай падения Квика, которые происходят всё чаще).

Клава и мышь обрабатываются в прерываниях (коллбеках), установленных по SetTableNotificationCallback. Я, правда, не знаю, есть ли там комбинации с ctrl и alt, но мне пока что хватает мыши и пробела с Enter. :smile:

Артем, ЩАЗ! Что толку от Ваших "идентификаторов, идущих по порядку начиная с 1"? А ну, кликните мышой по заголовку какого-нить столбца! Что случится с Вашими "идентификаторами"? Правильно, Большая Жопа. Обсуждалось тут уже (в т.ч. с моим участием).
iCode – код параметра, выводимого в колонке
 
Евгений, Ну я уж и не знаю, каким местом можно ТАКОЕ задумывать! :smile:

Для меня в своё время было шоком, что на одно событие приходят несколько прерываний, потом - что они приходят вразнобой, теперь вот это...

Да сделать-то многое можно - труднее всего выявить ошибку, исправить на порядок проще. Но мне просто противно обрабатывать подобные глюки - тем более, что они иногда резко усложняют код. Например, удаление несработавших заявок - это просто песня! Хотя я вообще никак не контролирую, сработает KILL_ORDER или нет. И прерывания OnOrder выбросил нафиг, как и подавляющее большинство остальных.
iCode – код параметра, выводимого в колонке
 
Евгений, Нет, всё намного хуже.  :smile: У меня четверть, если не треть всего кода посвящена именно компенсации различных глюков. Из непобеждённых остался такой: при обрыве и восстановлении связи эта скотина присылает целую колоду прерываний OnTrade,некоторые из которых были исполнены ещё вчера!
iCode – код параметра, выводимого в колонке
 
Евгений, Вот уж извините! Это источник ТАКИХ глюков, с которыми Вы потом в жисть не разберётесь! Я даже при изменении строк в таблице перебиваю её заново ( Clear + InsertRow)! А при пропадании текста в таблице и вообще приходится делать DestroyTable + AllocTable!
iCode – код параметра, выводимого в колонке
 
Евгений, Ничего подобного! Я невидимые столбцы создаю сам - они не для юзера, а для самого скрипта. Вот так:
AddColumn(T,0,"",true,QTABLE_STRING_TYPE,0);
AddColumn(T,1,"Тикер",true,QTABLE_STRING_TYPE,8);
...
iCode – код параметра, выводимого в колонке
 
Евгений, Не знаю, у меня не получилось. Но на клик мышкой по этому столбцу и по его заголовку события нормально обрабатываются.

Последовательность действий (у меня):
1. AllocTable
2. SetTableNotificationCallback
3. AddColumn
4. CreateWindow
5. SetWindowPos
6. InsertRow
7.  SetColor
8. SetCell
9. DestroyTable
iCode – код параметра, выводимого в колонке
 
Евгений, Да, это номер колонки. Можно нумеровать с нуля (у меня там невидимый столбец) или с единицы. Код -1 для столбца с номерами строк.
Отладка QUIK 8.13
 
swerg, А в чём Вы кайф понимаете, лапуль? В тяфтяфках из подворотни? У головожопых только две версии для "оправдания" своего поведения: "медицинская" и (гораздо более тупая и, соответственно, более популярная) версия "ржача". Вы, как вижу, перешли во вторую? Мы ведь давно с Вами во всём определились, а Вы всё никак не успокоитесь. Я понимаю: морды битые, отыграться хочется, но добавлять-то зачем? Вы же ЗНАЕТЕ, что по делу возразить ничего не можете - остаются тяфтяфки. Ладно, повожу малёк носом по нашим предыдущим разговорам, когда Вы еще " понимали кайф мазаться об говно":
Скрытый текст

Для справки: это Артем визжащий дурак, вроде Вас, а вот TGB как раз вполне профессионален, и уступает (по моим оценкам) на этом форуме разве что Антону. А Вы наблюдайте - вдруг поможет? Тяфтяфкать только не советую. Впрочем, дело Ваше.
Отладка QUIK 8.13
 
Артем, Лапуль, покопайтесь в моих давних сообщениях, если интересно - мне лень ковыряться по "запросам" очередного распальцованного неуча. И я, в отличие от некоторых, отвечаю ЗА ВСЕ свои слова! :wink:  
Отладка QUIK 8.13
 
Артем, А Вы, сударь, чем здесь всё это время занимаетесь? Неужто мешки ворочаете? :wink:

Ещё до Вашего появления здесь я предлагал обсудить как интерфейс Lua-программиста, так и организацию диалога (также на Lua) для конечного пользователя. Тогда эти предложения благополучно издохли. Уже потом я получил более убедительные сигналы, что задачи у разработчиков софта и их клиентов диаметрально противоположные: вторым нужна стабильно работающая версия, а первым - бесконечный выпуск всё новых версий. Ну, а на повизгивания распальцованных неучей чего-то там "в студию" мне много лет пилювать с высокой колокольни.
Отладка QUIK 8.13
 
Артем, Лапуль, Вы ещё и по интерфейсам спец?  :smile:  Информирую Вас, что я ЛИЧНО могу предложить интерфейс, как минимум, вдвое легче существующего, что только бездарям  тупорылым нынешний интерфейс может показаться "минимальным, слишком скудным и с неполным покрытием", им ВСЕГДА чего-то не хватает, им ВСЕГДА хочется что-то "расширять и углублять". В результате ЛЮБОЙ софт засирается так, что знаменитые Авгиевы конюшни выглядят на этом фоне чуть ли не благоухающим садом! Лапуль, у меня за плечами ДЕСЯТКИ диалоговых программных комплексов! А Вы разработали хоть один, умник? Какой тут, в задницу, могёт быть "функционал"? И Вам ли вообще говорить о функционале? Напоминаю, что я на этом форуме единственный, кто пишет на чистом Lua и я УЖЕ написал всё, что изначально планировал. У меня УЖЕ РЕАЛИЗОВАН весь этот грёбаный "функционал", да ещё такой, какой Вам с таким подходом не написать НИКОГДА! На данный момент это 16 (прописью: ШЕСТНАДЦАТЬ!) функций, включая main и все коллбеки, общим весом 18968 байт. И работает, падла! И КАК работает! :what:  
Отладка QUIK 8.13
 
TGB,
Цитата
Мне кажется, это может порождать ошибки в скриптах пользователей, не являющихся профессиональными программистами.
По сравнению с динамической типизацией это даже упоминать не стоит - во где кладезь потенциальных ошибок! А вообще, конечно: базовый интерфейс неплохо бы резко упростить. Ну зачем рядовому юзеру знать, например, о существовании sendTransaction? Не говоря уже о том, что обеспечивать уникальность их айдишек он должен сам - во радость! А набивать значениями таблицы с фиксированными именами полей - это как? Ну и количество доступных функций (в особенности коллбеков) сократить в разы. Эх, мечты, мечты...  :smile:  
Отладка QUIK 8.13
 
TGB, Какие шутки с такими комплексами? Вот, например:

Легко наверное жить когда уровень ЧСВ еще выше чем уровень IQ. Когда нейронный робот запустится, я с вами поделюсь данными о монетарной производительности.
Отладка QUIK 8.13
 
Артем, Лапуль, я про то и говорю: ДАВНО ПОРА нас "игнорировать наотрез". Тем более, что и у него, и у меня всё давно работает, а вечный скулёж "гуру" о проблемах именно ВЕЧНЫЙ.

Незнайка, Я бы говорил! А спора здесь никакого нет и не было.
Отладка QUIK 8.13
 
Артем, Сударь, Вы решительно надоели своей назойливой тупостью. С Вами разговаривать не о чем, Ваша "квалификация" многократно подтверждена здесь Вами же. Так что НЕ ВАМ определять "весомость аргументов"! Нижайшая просьба: заткнитесь по-хорошему, а? :wink:  
Отладка QUIK 8.13
 
TGB, О! Подробности реализации от пользователя скрываются! Нет ничего страшнее придурка с пулемётом. Лопату ему в зубы, и пусть копает! А инструкции давать чистыми, без единого символа! Это и есть наилучшая "защита от дурака". :smile:  
Отладка QUIK 8.13
 
TGB, А разве что-либо где-либо когда-либо бывало  реализовано корректно?  :smile: Здесь всё-таки операции с деньгами, и мне казалось, что уж здесь-то должна быть высочайшая надёжность. А оказалось, я стал опасаться ЛЮБЫХ изменений. Не бывает таких ситуаций, чтобы нельзя было сделать ещё хуже.
Отладка QUIK 8.13
 
TGB, Бывают и другие ситуации зависания в QLua, без "длинного цикла пользовательской программы". Я стараюсь в коллбеках ничего не делать, только флаги разные расставлять, а действия выполнять по этим флагам уже в мейне, но разок прокололся: в коллбеке на действия пользователя (кнопки купить/продать в контекстном меню) я посылаю заявки - видимо, за это и был несколько раз наказан падением Квика.

Как это "исключить sleep и файловые операции"? Слип эмулирует прерывания по таймеру, а файловые операции с некоторого времени я стал выполнять именно из коллбека (OnStop) - в противном случае теряется управление, и я остаюсь без дампа текущего состояния моего портфеля - Антон когда-то подробно разбирал эту ситуацию). Вы там поосторожнее с экспериментами! :smile:  
Средства разработки многопоточных скриптов в QUIK., OS_Quesha, свидетельство регистрации в Роспатенте № RU 2020612905. Бесплатная для некоммерческого использования.
 
TGB, Вот видите? Я же говорю, что мой стиль идеальнее! :smile:  
Средства разработки многопоточных скриптов в QUIK., OS_Quesha, свидетельство регистрации в Роспатенте № RU 2020612905. Бесплатная для некоммерческого использования.
 
TGB, Так и у меня оба этих пункта есть!  :smile:  
Средства разработки многопоточных скриптов в QUIK., OS_Quesha, свидетельство регистрации в Роспатенте № RU 2020612905. Бесплатная для некоммерческого использования.
 
TGB, Начал было обрезать описание, но быстро утомился. В общем, вот он, мой "идеальный стиль" во всей красе:

Стиль мой не ругал только ленивый. Особенно часто это делают мои друзья, которые бывают иногда весьма убедительны. Тем не менее, я считал и считаю, что стиль у меня практически идеальный.
...
Речь идёт, разумеется, только о форме общения - содержание достаточно неплохо описывается пушкинским: "Для власти, для ливреи не гнуть ни помыслов, ни совести, ни шеи". А по форме претензии ко мне такие:

Вов, а ты не допускаешь, что люди просто не терпят такого стиля общения? Я ведь тоже такое очень не люблю и делаю исключение только для тебя. Хотя в голове у меня как-то плохо совмещается твой ум, начитанность и такой язык.
Вова, найди хоть одного человека, который бы видел тебя больше одного-двух раз в сети, но ни разу не наблюдал бы твоего махания шашкой и не пытался бы от него отговорить. Это что - случайное совпадение?
Людям всегда необходимо время, чтобы присмотреться друг к другу. А ты порой при знакомстве вместо руки подаёшь сразу ногу с разворота. Смысл?
Да, собеседник равен мне. Именно поэтому я стараюсь не допускать в общении резких движений, поощрять хорошее больше, чем тыкать носом в плохое - делать ровно то же, чего я хотела бы видеть по отношению к себе. И что-то я не слышу от собеседников тех эпитетов, которыми они награждают тебя. Ты умеешь общаться как я, это я знаю. И равенство сторон от этого не страдает абсолютно. Почему не пользуешься? Чем "идеальнее" твой стиль? Зачем тебе все эти эпитеты и стада бегающих за тобой по пятам "поклонников"?
Когда ты вытравливаешь своей манерой троллей из ветки - ну как-то ещё можно понять, хоть и с натяжкой. А с остальными что? Если ты хочешь чтобы твои умные мысли хотя бы просто начали воспринимать, ну не бей сразу по лицу, не делай сам так, чтоб человек рефлекторно жмурился
Понятно, твой стиль "идеальнее" при определённых условиях - когда "все свои" и когда общение идёт не столько ради общения, обмена мнениями, а когда оно фон - работы ли, досуга, словом, когда помимо собственно общения идёт ещё какой-то процесс в хорошо знакомой уже, сработанной компании. Там и правда форма не на втором, а уже на десятом плане. Естественным образом. Но в сетевой беседе со знакомыми, а часто и с малознакомыми людьми форма намного важнее, весомее.

Убедительно? Убедительно. Да я и сам прекрасно знаю, что "встречают по одёжке". Но вот моя точка зрения на это дело, тоже многократно высказываемая в разных местах: да, стиль своеобразный, но это рабочий стиль! Я заранее предполагаю, что оппонент адекватен, что он меня уважает, что он предполагает, что и я его уважаю, что все тезисы (мои или его) есть соответствующее IMHO, что это не нужно проговаривать на каждый чих. У меня нет ни времени, ни желания долго "обнюхиваться" при знакомстве, делать реверансы и т.п. И собеседнику моему, я полагаю, тоже время дорого. Так зачем же нам фигнёй заниматься, приплясывать друг перед другом - в тыщу раз эффективнее сразу поверить, что перед тобой нормальный, хороший человек, что с ним можно обмениваться эмоциональными, то бишь максимально информативными сообщениями. Господа, ну ведь это же так просто!

Да, "реверансы в обществе всячески приветствуются", люди считают их признаком воспитания и всё такое. Это так называемый "свет" - когда есть некий прописанный дресс-код, типа "в ресторан без галстука нельзя". Бездельникам делать нечего - вот они и раскланиваются. В рабочем же коллективе вполне может оказаться тем самым "реверансом" просто обычное включение новичка в работу, как равного, без церемоний! Я знаю, в видел их глаза в такие моменты! Меня и самого в своё время именно так брали за жопу "бабушки и дедушки отечественного авиастроения"! Это и есть вежливость! Это и есть уважение! Потрясающе действует!

Я 15 лет проработал в лаборатории, где все поголовно так общались! И на шашлыки мы ходили обычно всей лабораторией, и там друг на друга орали под водочку, доказывая, чей алгоритм лучше, и начальники у нас были "Мишка", да "Серёга" (не при посторонних, естественно), но и иерархии (даже временные!) строго соблюдались. Более того, я думаю, что если люди реально работают, то этот стиль чуть ли не единственно возможный! Я просто уверен, что творческие коллективы на прорыве (Туполева, Микулина, Королёва, Тимофеева-Ресовского - по барабану) работали именно так. Дресс-код тоже допустим, но он утомляет, и потому гораздо менее эффективен. А этот "мой" стиль лишь с непривычки "режет ухо", но именно он и оказывается самым комфортным при запредельных нагрузках. Тогда форма действительно "оказывается на десятом плане", и кто там "начальник", а кто "дурак" очень часто не имеет значения, и новички в таком коллективе становятся "своими" за считанные дни - за неделю максимум!

Для меня самого было в своё время открытием, что этот стиль возможен не только "в своём кругу", а практически где угодно. Он оказался эффективным даже "для первого знакомства"! Судите сами: этот стиль хронически неприятен всяким "портянкам" и другим троллям, потому как он просто требует наличия мозгов и умения говорить своими словами! Этот стиль вполне комфортен и для друзей, они легко к нему привыкают - обычный формат "без галстуков". Наконец, он достаточно резко бьёт по глазам новичкам, привлекает внимание, сбивает равнодушие, заставляет определиться по отношению к высказываемому тезису (или, на худой конец, к его автору). Одни сплошные плюсы!

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

Да, мои слова часто "выглядят именно наездом или наскоком". Для тех, кто закомплексован, кто ищет эти наскоки, кто не в состоянии поверить собеседнику, кто боится быть им обманутым... да и хрен бы с ними! Следовательно, этот мой стиль не только рабочий, но и фильтрующий всяких закомплексованных! Не говоря уже про штатных троллей. Они с этим стилем не уживаются, он не сдаёт территорию хаму и мерзавцу - он её защищает. А если мы будем себя уважать только на собственной кухне, отдав все публичные площадки хамам и подлецам, то за что, нам, собственно, себя уважать?

Да, я "ответчик". Да и как иначе? Любой диалог есть обмен мнениями, аргументами, согласование позиций. И не с кем-нибудь, а с собеседником, реакция на его высказывания. Но ни одна из моих коммуникаций в сети изначально не имеет "мотивации раздолбать, заткнуть визжащих и добиться капитуляции". Я собеседника по умолчанию уважаю, Ну, а уж дальше - как получится.

Я терпеть не могу "анонимного" визга типа "кто-то кое-где у нас порой" - это классическое поведение портянок, это классическое поведение гебнявых ублюдков, включая Путина. Если уж ты кого-то в чем-то обвиняешь, так будь любезен адресно это делать! Я стараюсь всегда быть конкретным, и говно говном называть строго "индивидуально". Кроме того, я считаю, что любое своё заявление человек обязан защищать, обосновывать - иначе зачем вякал? Хотя бы так: "Я не знаю, почему я так считаю - просто мне так кажется". Вполне нормальное обоснование! Это тоже называется "отвечать за базар"!

Да, я хочу быть услышанным и понятым. Но отнюдь не "кем бы то ни было". Люди мне важны, быдло - нет: любая реакция быдла не может меня ни "окрылить" ни, наоборот, "заставить опустить руки". Я согласен с фразой Ходорковского: "Есть люди, чьё мнение мне радикально безразлично". Да, движение мне тоже нужно, но только не по кругу, и не по синусоиде. Да, я тоже хотел бы "больше позитива", но где, простите, хоть что-то "светленькое" выковырять из всего этого потока мерзости, которая льётся на нас каждый день? Не замечать? Врать? Без меня!

О портянках: мой опыт показывает, что на них как раз нужно тратить время, ибо именно от безнаказанности у них окончательно сносит крышу, и они засирают всё на три мили вокруг своим словесным поносом. Другое дело, что занятие это достаточно неприятное, и мало кому хочется находиться "в этом во всём". Чем эти ублюдки и пользуются. Да и для нормальных людей вовремя получить точный "удар в глаз" бывает очень полезно. Я даже пару раз предлагал кое-где на форумах установить дежурства, дабы шавки визжащие никогда себя в безопасности не чувствовали и, следовательно, не смели бы особо пасти раскрывать. Увы, как и следовало ожидать, идея закончилась полным пшиком. А жаль...

Последнее: я не собираюсь лукавить, заменять фразы "чем-то гипоаллергенным" или "проскакивать пока это место в объяснениях вообще", не собираюсь "сначала показать красивый образ, картинку, как всё будет прекрасно, когда..." Вот "привести примеры какие-то, понятные каждому, нарисовать схему" - могу. Но только не люмпену. Я убеждён, что нельзя найти нечто хорошее в ком-бы то ни было, если он сам не начинает это искать - пущай и собственную задницу от кресла отрывает! Кстати, это как раз "ровно то же, чего я хотел бы видеть по отношению к себе". Идея "обрастает в пути необходимыми деталями и т.д." только в процессе диалога, обратной связи, споров, драк, но никогда при "вещании с броневика"! Я всё время говорю: "Спорьте, бейте меня - я полностью открыт, у меня даже ника сроду не было, ведь разве rybvv это ник"? Но бейте аргументами, чиорт побъери! И ещё: этот мой стиль - он для взрослых. Я много раз говорил открытым текстом, что не перевариваю общения ни "снизу вверх", ни "сверху вниз" - собеседник равен мне! А я - взрослый. Так что и собеседник мой - взрослый! Приплясывать перед ним и трясти погремушками я не намерен. Такой вот у меня "идеальный стиль"...
Страницы: Пред. 1 ... 22 23 24 25 26 27 28 29 30 31 32 ... 41 След.
Наверх