Как по Вашему, какой ИИ лучше для кодинга на MQL4/5? (Можно выбрать несколько) - страница 8

 
Aleksey Vyazmikin #:
В опросе не хватает KIMI - ограниченно бесплатная модель.
И вообще, вопрос тут в том, как оценивать - какая модель знает язык из коробки, или какая способна его синтаксис успешно понять и хорошо работает с контекстным окном.
Я за последние месяцы активно кодил вещи не связанные с трейдингом на питоне и React (JS) с использованием LLM. И если не контролировать процесс, то всё может компилироваться, но работать не так, как надо, или код может быть очень не оптимизирован, к примеру сохранение таблицы в базу построчно, через сотни тысяч транзакций, а не общим пакетом, при этом понятно, что пользователь базы один.
Сделал вывод, что это хороший помощник, который позволяет реализовывать идеи на разных языках программирования, но нужно знать хотя бы один язык и уметь понимать код.
В сложных проектах, где кода более 3000 строк, надо начинать с архитектуры, разбивая функционал на отдельные группы функций/классов, потом постепенно реализовывать функционал с отладкой.
На MQL5 за примерно 20 часов (два дня) написал класс для создания таблиц на канвасе, хотя я совсем не хотел вникать ранее в эту графику, а с помощью LLM процесс прошёл бодро. Как я делал - указал ссылку на документацию, дал пример на MQL5 с канвасом, написал ТЗ, скинул класс Canvas.mqh . После первого готового кода расписал два десятка ошибок при компиляции - указав код из ошибок и дав ссылки на документацию - к примеру по массивом (ну нельзя многомерные массивы без размера объявлять), потом дела пошли лучше. Чувствуешь себя тестером и заказчиком-халявщиком, который хочет выжить максимум бонусов от взаимодействия с исполнителем заказа, потому что процесс превращается в запуск правок кода и описание багов поведения, т.е. логики.
В целом нужно писать ТЗ, давать документацию - ссылки на синтаксис языка, подробно писать баг-репорты, тогда работа может быть продуктивной.
Использую KIMI для быстрого чернового старта, а потом Qwen для глубокой проработки идей. Кстати, версия Qwen 3.5 лучше держит большие контекста, чем Qwen 3.6 - по моим ощущениям.
Ещё раньше работал Mistral - очень шустрый, но чего то перестал - не знаю, может в списки попал. У них моделька бесплатная хороша для небольших консультаций.
KIMI хорош по технической части - шарит про прошивки и железо в целом - помог восстановить SSD, подбирает аналоги деталей микроэлектроники.
Бесплатный ChatGPT - слишком слабоват в задачах программирования - ограниченный объем вывода информации и плохое контекстное окно. По железу ПК - сбор мнений из интернета - приходится тыкать носом в глупые изречения очень часто. Может, платные варианты лучше.
В больших проектах рекомендую раз в 3 дня (или чаще - по необходимости) всё же начинать новый чат, подводя итоги в текущем - так-как происходит забивка суммаризированного контекстного окна и часто он модель не может взглянуть на ситуацию под другим углом и исправить ошибку в коде.
Поэтому хорошо бы провести сравнительные тесты с изначальными одинаковыми исходными данными, но поставить такой эксперимент сложно.
В целом, по моим ощущениям, у меня скорей растут компетенции, чем возникает ощущение отупения, но это потому что проекты не совсем простые и многое приходится делать руками и думать головой. Признаю, что иногда просто начинаешь злится, когда LLM затупляет, а разбираться не хочется - воспринимаешь как сотрудника (а может даже тут нечто типа родитель-ребенок - когда ты не разумное дитя с безграничными ожиданиями по возможностям родителей).
И ещё Qwen очень хорош для того, что бы поговорить просто за жизнь - хорошо шарит в психологии.
В целом это инструмент, который сокращает время на поиск решений и расширяет компетенции.


Я пользуюсь платным chatGPT, бесплатный вообще не пригоден для того, чтобы при помощи него кодить. 

Согласен с тем, что часто, если он делает ошибки при реализации кода, то сначала думаю, что ИИ глючит, а потом читаю что я написал в ТЗ и понимаю, нет не глючит, сделал ровно так, как я и просил и глючу я. Первая реакция действительно винить ИИ)). Но последнее время я косячу намного чаще, чем он. Иногда даже наоборот, когда перечитываю ТЗ думаю: "да как же он вообще собрал правильно с таким ТЗ". То есть если логику прописать подробно, то он и делает нормально. Но вот ошибки компиляции он создает сам частенько. Часто он путает C++ и MQL5и потом сам же про это и говорит, что прости, я перепутал, на MQL5 так нельзя, так только для C++ можно. Но ТЗ надо делать настолько подробное, что по сути сначал разрабатываешь архитектуру, потом алгоритм и только потом используешь ИИ как переводчик с человеческого языка на нужный язык программирования. То есть думать приходится все равно много и большое количество вещей действительн опроще сделать самому, если знаешь язык программирования. Но если незнаешь, то наверное закодить алгоритм при помощи ИИ так-же долго как и вручную, отличается только пласт необходимых знаний. 

 
Aleksey Vyazmikin #:
В опросе не хватает KIMI - ограниченно бесплатная модель...
Да, я говорил, что это не полный список, а лишь те, с которыми приходилось иметь дело. Что добавили ещё 1 ИИ, спасибо. Попробуем всем миром.
 
lynxntech #:

даже оболочка такая??


Если кому-то интересно, вот текстовые файлы с кодом, но я не знаю, будет ли код работать на вашем компьютере, потому что он изначально был создан для конкретной модели компьютера. И вам нужно убедиться, что созданный скриптовый файл 'fan.ps1' соответствует консоли PowerShell, а файл 'run.cmd' — консоли командной строки.



Ниже — готовая пользовательская инструкция на русском языке.


Инструкция пользователя для Dell G15 Fan Control

1. Где должны находиться файлы

Для корректной работы программы оба файла должны лежать в одной и той же папке:

  • fan.ps1

  • run.cmd

Это важно, потому что run.cmd запускает именно файл fan.ps1 из своей текущей папки. Если разнести файлы по разным местам, запуск может не сработать.

Подходящий пример расположения:

C:\DellG15FanControl\ fan.ps1 run.cmd


2. Как запускать программу

Основной способ запуска

  1. Откройте папку, где лежат файлы.

  2. Запустите run.cmd .

  3. Если Windows покажет запрос контроля учётных записей (UAC), подтвердите запуск с правами администратора.

  4. После этого откроется графическое окно программы.

Что делает run.cmd

run.cmd :

  • переходит в папку, где находится сам файл,

  • запускает fan.ps1 ,

  • скрывает консоль PowerShell,

  • открывает именно окно управления вентиляторами.

То есть для обычного пользователя основной файл запуска — run.cmd .

Альтернативный способ

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


3. Порядок использования

Рекомендуемая последовательность:

  1. Поместить run.cmd и fan.ps1 в одну папку.

  2. Запустить run.cmd .

  3. Дождаться открытия окна программы.

  4. При необходимости настроить блок Control Settings.

  5. Использовать нужный режим:

    • Force 100%

    • Return to Auto

    • CPU Load Auto


4. Что важно знать до начала работы

При запуске программы режим CPU Load Auto включён по умолчанию.

Это означает:

  • программа следит за загрузкой CPU,

  • при достижении заданного порога может перевести вентиляторы на 100%,

  • после снижения нагрузки возвращает управление в автоматический режим по заданной логике.

При закрытии окна программа старается вернуть штатическое автоматическое управление вентиляторами Dell.


5. Логика настроек в разделе Control Settings

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

5.1. Refresh interval (ms)

Это интервал обновления данных в миллисекундах.

Что меняет эта настройка

Она задаёт, как часто программа:

  • обновляет показания,

  • проверяет загрузку процессора,

  • пересчитывает логику режима CPU Load Auto ,

  • обновляет отображаемые значения RPM и состояния.

Диапазон

  • минимум: 250 ms

  • максимум: 5000 ms

  • шаг изменения: 250 ms

  • значение по умолчанию: 500 ms

Как это влияет на работу

  • Меньше значение → программа реагирует быстрее, интерфейс обновляется чаще.

  • Больше значение → программа реагирует медленнее, но делает меньше проверок.

Практический смысл

  • 250–500 ms — более быстрая реакция.

  • 1000 ms и выше — более спокойное обновление, но логика срабатывает не так быстро.


5.2. Auto release hold (s)

Это время удержания вентиляторов на 100% после того, как нагрузка на CPU снизилась до уровня выхода.

Что меняет эта настройка

Когда CPU Load Auto уже включил 100% вентиляторов, программа не возвращает их сразу в автоматический режим после снижения нагрузки. Сначала запускается таймер удержания.

Именно это время и задаётся в Auto release hold (s) .

Доступные значения

Список значений:

  • 0

  • 5

  • 10

  • 13

  • 15

  • 17

  • 20

  • 25

  • 30

  • 35

  • 45

  • 60

Значение по умолчанию

  • 17 секунд

Как это влияет на работу

  • Меньшее значение → возврат в авто произойдёт быстрее.

  • Большее значение → вентиляторы дольше останутся на 100%, даже если нагрузка уже упала.

Важная логика

Если во время этого удержания нагрузка CPU снова поднимется до порога входа, обратный отсчёт отменяется, и вентиляторы продолжают работать на 100%.

Практический смысл

  • 0–5 сек — для быстрого возврата в авто.

  • 15–30 сек — более стабильная работа без постоянного переключения туда-сюда.

  • 45–60 сек — для агрессивного охлаждения после нагрузки.


5.3. CPU auto thresholds

Это два порога, которые управляют логикой режима CPU Load Auto :

  • Enter

  • Exit


5.3.1. Enter

Enter — это порог загрузки CPU, при достижении которого программа переводит вентиляторы в 100%, если CPU Load Auto включён.

Доступные значения

  • 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95, 100

Значение по умолчанию

  • 80%

Логика

Если загрузка CPU становится равной или выше Enter, программа:

  • включает 100% обороты,

  • фиксирует это состояние,

  • далее ждёт выполнения условий для выхода.

Практический смысл

  • 50–60% — раннее включение интенсивного охлаждения.

  • 70–80% — более умеренная стандартная логика.

  • 90–100% — 100% вентиляторы будут включаться только при очень высокой нагрузке.


5.3.2. Exit

Exit — это порог загрузки CPU, при достижении которого программа не сразу возвращает управление Dell Auto, а сначала запускает таймер удержания Auto release hold .

Доступные значения

  • 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 15, 20

Значение по умолчанию

  • 5%

Логика

Когда вентиляторы уже зафиксированы на 100% режимом CPU Load Auto , и загрузка CPU становится равной или ниже Exit, программа:

  1. запускает таймер удержания,

  2. держит 100% вентиляторов заданное количество секунд,

  3. затем возвращает управление в автоматический режим.

Практический смысл

  • Низкий Exit → возврат в авто только при почти полном падении нагрузки.

  • Более высокий Exit → возврат может начаться раньше.


6. Как эти три настройки работают вместе

Логика CPU Load Auto выглядит так:

  1. CPU Load Auto включён.

  2. Если загрузка CPU достигает Enter → включаются вентиляторы на 100%.

  3. Пока нагрузка высокая, 100% сохраняется.

  4. Когда нагрузка падает до Exit или ниже → запускается Auto release hold .

  5. Если за это время нагрузка снова поднимется до Enter → таймер отменяется.

  6. Если таймер дойдёт до конца → управление возвращается в обычный автоматический режим Dell.


7. Как влияют кнопки режима на работу настроек

Force 100%

Эта кнопка:

  • принудительно включает 100% обороты,

  • отключает CPU Load Auto,

  • отменяет активный hold-таймер.

То есть после нажатия Force 100% логика Enter / Exit / Hold больше не управляет вентиляторами, пока пользователь сам не переключит режим.


Return to Auto

Эта кнопка:

  • возвращает вентиляторы в штатический автоматический режим Dell,

  • отключает CPU Load Auto,

  • отменяет hold-таймер,

  • снимает принудительный режим 100%.


CPU Load Auto

Эта кнопка включает или выключает автоматическую логику по загрузке CPU.

Когда режим включён

Работают:

  • Enter

  • Exit

  • Auto release hold

Когда режим выключен

Эти настройки остаются в интерфейсе, но не управляют вентиляторами, пока режим снова не будет включён.


8. Как понимать статусы ON / OFF

В интерфейсе у кнопок предусмотрена индикация состояния:

  • Force 100%: ON — активен ручной принудительный режим 100%.

  • Return to Auto: ON — активен возврат в обычный автоматический режим Dell, а CPU Load Auto выключен.

  • CPU Load Auto: ON — активна автоматическая логика по загрузке CPU.

Это позволяет пользователю сразу видеть, какой режим сейчас работает.


Файлы:
run_txt.txt  1 kb
fan_txt.txt  39 kb