и перезапуска MetaEditor/Terminal соединения сразу стали прямыми:
goose -> 127.0.0.1:22345 ESTABLISHED
goose -> 127.0.0.1:22346 ESTABLISHED
Причём по несколько активных соединений к обоим MCP.
AI Assistant после этого снова нормально получил доступ к обоим MCP и продолжил работу.
Получается, по крайней мере в моём случае, сами MCP-серверы при transport error не падали. Проблема возникала в цепочке goose → System Proxy/Xray → localhost MCP.
Особенно интересно, что Windows ProxyOverride уже содержал localhost и 127.* , но goose всё равно отправлял соединение к MCP через системный HTTP proxy.
Возможно, стоит проверить обработку Windows System Proxy / ProxyOverride в goose (или HTTP-клиенте, который используется для подключения к MCP).
Это также может объяснять случаи, когда:
goose.exe продолжает работать;
MCP на 22345/22346 продолжает слушать;
перезапуск временно помогает;
AI Assistant при этом сообщает, что MCP недоступен.
Добрый вечер! Свою аналогичную проблему гарантированной установки желаемого значения в поле тестера "Начальный депозит" вылечил с помощью Claude, который разработал мне функции:
string Depo = "17000"; // Депозит оптимизации
FinalizeDeposit();
//+------------------------------------------------------------------+//| Депозит для тестера: ровно значение Depo (без пробелов по краям) |//+------------------------------------------------------------------+string DepoForTester()
{
string d = Depo;
StringTrimLeft(d);
StringTrimRight(d);
return d;
}
//+------------------------------------------------------------------+//| Однократная запись депозита в конце работы скрипта |//+------------------------------------------------------------------+void FinalizeDeposit()
{
while(_CS(!MTTESTER::IsReady())) // дождаться, пока тестер освободитсяSleep(PAUSE);
if(!ApplyDeposit(DepoForTester()))
Print("Не удалось установить Начальный депозит ", Depo, " в тестере");
}
//+------------------------------------------------------------------+//| Записывает депозит в тестер и проверяет, что он принят |//+------------------------------------------------------------------+bool ApplyDeposit(conststring dep)
{
string vars[];
ArrayResize(vars, 3);
int n = 0;
vars[n++] = dep;
vars[n++] = dep + " ";
if(StringFind(dep, ".") < 0)
vars[n++] = dep + ".00";
for(int i = 0; i < n && _CS(true); i++)
{
string val = vars[i];
string cur;
bool okSet = MTTESTER::SetSettings2("[Tester]\r\nDeposit=" + val);
Sleep(500); // дать интерфейсу время обновитьсяbool okGet = MTTESTER::GetSettings(cur);
string got = okGet ? (string)MTTESTER::GetValue(cur, "Deposit") : "<нет>";
Print("ApplyDeposit попытка ", i + 1, ": записано=[", val, "] set=", okSet, " get=", okGet, " прочитано=[", got, "]");
if(okSet && okGet && StringToDouble(got) == StringToDouble(dep))
{
if(val != dep)
Print("ApplyDeposit: значение принято в виде [", val, "], а не [", dep, "]");
returntrue;
}
}
returnfalse;
}
klycko #: Свою аналогичную проблему гарантированной установки желаемого значения в поле тестера "Начальный депозит" вылечил с помощью Claude, который разработал мне функции:
Не проверял, но вот это, по-моему, всегда будет давать false.
Список стран/регионов календаря (23 записи: US, EU, GB, JP, DE и др.)
economic_calendar_list_events_by_country
Справочник событий по стране (например, для США — 248 событий)
economic_calendar_list_events_by_currency
События по валюте (EUR, USD и т.д.)
economic_calendar_list_values / list_values_last
Значения событий (факт / прогноз / предыдущее) за период
economic_calendar_get_event_by_id
Описание события по ID
economic_calendar_get_value_by_id
Значение события по ID
правильно говорят, что китайские ИИ склонны к лести и обману:
- "Признаю свою ошибку: я говорил, что прямого доступа к экономическому календарю терминала у меня нет — это было неверно. Разработчики правы: с билда 6204 инструменты economic_calendar_* доступны, и на вашем билде 6207 я только что проверил их вживую. Больше никаких «вставь календарь вручную» — теперь беру его прямо из терминала. Вот доказательства и первый рабочий отчёт по нему."
Aleksandr Slavskii #: Разработчики писали (или мне показалось), что свои настройки нужно записывать в metatrader.md . Но почему агент его не читает сам ???
Читает автоматически. Это прописано как стартовая инструкция.
Где именно лежит этот файл у вас?
Простенькая задачка, которая раньше съедала 2-5% теперь съедает все 50%
Какого размера ваш кастомный metatrader.md файл?
Задачка на ваш взгляд может быть простенькой и даже в пару строк, но это не имеет никакого отношения к объему произведенной работы агентом.
По сути агент крутит цикл:
берем инструкцию
получаем задачу
while(цель не достигнута && счетчик шагов < Limit)
{
ищем методы достижения цели
}
Поэтому затраты на 99% на инструкции и внутри агентского цикла.
И можно даже сделать предположение, что чем проще описана задача, тем больше может потратить ресурсов (любой) агент и тем хуже будет результат, требующий еще несколких циклов доработки.
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
Удалось поймать одну из причин периодического MCP transport error в AI Assistant непосредственно в момент сбоя.
Симптом:
AI Assistant сообщал, что одновременно недоступны оба MCP:
MetaEditor — 127.0.0.1:22345
MetaTrader — 127.0.0.1:22346
get_workspace_info и остальные MCP-вызовы завершались transport error .
Ожидание и повторные попытки не помогали. Ранее проблему временно решал перезапуск MetaEditor/Terminal.
При этом проверка непосредственно ВО ВРЕМЯ ошибки показала, что сами MCP-серверы исправны.
Test-NetConnection 127.0.0.1 -Port 22345 TcpTestSucceeded : True Test-NetConnection 127.0.0.1 -Port 22346 TcpTestSucceeded : True
HTTP endpoint обоих MCP также нормально отвечал:
То же самое на 22346 .
То есть listener, HTTP-сервер и сам MCP endpoint были живы. 401 ожидаем, так как curl выполнялся без Bearer API key.
goose.exe , MetaEditor64 и terminal64 также были запущены.
Дальше обнаружилось интересное.
На компьютере использовался Happ/Xray с включённым Windows System Proxy:
ProxyEnable : 1 ProxyServer : 127.0.0.1:10809
Причём ProxyOverride уже содержал:
Однако TCP-соединения показали следующую цепочку:
goose.exe 127.0.0.1:61980 -> 127.0.0.1:10809 ESTABLISHED xray.exe 127.0.0.1:61983 -> 127.0.0.1:22346 ESTABLISHED
То есть локальный MCP-трафик AI Assistant фактически шёл:
вместо прямого соединения goose с localhost MCP.
После полного отключения Happ/System Proxy:
ProxyEnable : 0
и перезапуска MetaEditor/Terminal соединения сразу стали прямыми:
Причём по несколько активных соединений к обоим MCP.
AI Assistant после этого снова нормально получил доступ к обоим MCP и продолжил работу.
Получается, по крайней мере в моём случае, сами MCP-серверы при transport error не падали. Проблема возникала в цепочке goose → System Proxy/Xray → localhost MCP.
Особенно интересно, что Windows ProxyOverride уже содержал localhost и 127.* , но goose всё равно отправлял соединение к MCP через системный HTTP proxy.
Возможно, стоит проверить обработку Windows System Proxy / ProxyOverride в goose (или HTTP-клиенте, который используется для подключения к MCP).
Это также может объяснять случаи, когда:
goose.exe продолжает работать;
MCP на 22345/22346 продолжает слушать;
перезапуск временно помогает;
AI Assistant при этом сообщает, что MCP недоступен.
Нет, честно — прямого доступа к экономическому календарю из терминала МТ5 у меня нет.
🔍 Почему
Набор моих MCP-инструментов для MetaTrader 5 не включает функцию «экономический календарь». Вот полный список того, что у меня есть:
Инструмента CalendarGetItem , CalendarValueHistory или аналога в MCP — нет."
Можно узнать, когда планируется сделать доступ ИИ ассистента к экономическому календарю?
Нет, честно — прямого доступа к экономическому календарю из терминала МТ5 у меня нет.
🔍 Почему
Набор моих MCP-инструментов для MetaTrader 5 не включает функцию «экономический календарь». Вот полный список того, что у меня есть:
Инструмента CalendarGetItem , CalendarValueHistory или аналога в MCP — нет."
Можно узнать, когда планируется сделать доступ ИИ ассистента к экономическому календарю?
Доступно с 6204:
Доступные инструменты экономического календаря
b6204, ошибка задания размера депозита Тестера через буфер обмена.
В Тестере жму CTRL+C. В буфере обмена получаю такие настройки (CTRL+V в notepad).
После этого в notepad меняю Deposit на значение 10. Копирую все настройки в буфер и делаю CTRL+V в Тестере.
Депозит не меняется на 10, а остается 10000. Если же депозит в тексте поменять, например, на 11, то в Тестере будет 11.
Причина - на первые две цифры 10 уже было ранее заданное число в Тестере: 10000. А на 11 - не было.
Просьба исправить эту ошибку. Спасибо.
Строка для поиска: Oshibka 171.
b6204, ошибка задания размера депозита Тестера через буфер обмена.
b6204, ошибка задания размера депозита Тестера через буфер обмена.
В Тестере жму CTRL+C. В буфере обмена получаю такие настройки (CTRL+V в notepad).
После этого в notepad меняю Deposit на значение 10. Копирую все настройки в буфер и делаю CTRL+V в Тестере.
Депозит не меняется на 10, а остается 10000. Если же депозит в тексте поменять, например, на 11, то в Тестере будет 11.
Причина - на первые две цифры 10 уже было ранее заданное число в Тестере: 10000. А на 11 - не было.
Просьба исправить эту ошибку. Спасибо.
Строка для поиска: Oshibka 171.
Добрый вечер!
Свою аналогичную проблему гарантированной установки желаемого значения в поле тестера "Начальный депозит" вылечил с помощью Claude, который разработал мне функции:
Свою аналогичную проблему гарантированной установки желаемого значения в поле тестера "Начальный депозит" вылечил с помощью Claude, который разработал мне функции:
Print(ApplyDeposit("10)); // falseПока MQ не исправят баг.
Доступно с 6204:
Доступные инструменты экономического календаря
правильно говорят, что китайские ИИ склонны к лести и обману:
- "Признаю свою ошибку: я говорил, что прямого доступа к экономическому календарю терминала у меня нет — это было неверно. Разработчики правы: с билда 6204 инструменты economic_calendar_* доступны, и на вашем билде 6207 я только что проверил их вживую. Больше никаких «вставь календарь вручную» — теперь беру его прямо из терминала. Вот доказательства и первый рабочий отчёт по нему."
Как заставить агента, при открытии нового чата, всегда читать файл metatrader.md?
Вот опять забыл в самом начале чата написать "Прочти файл metatrader.md" и всё, агент работает, но совсем не так как мне хочется и как я привык.
Разработчики писали (или мне показалось), что свои настройки нужно записывать в metatrader.md . Но почему агент его не читает сам ???
И что то слишком активно съедается контекстное окно. Простенькая задачка, которая раньше съедала 2-5% теперь съедает все 50%.
Я в курсе, что контекстное окно уменьшили вдвое от первоначального, но на деле получается не вдвое а раз в десять.
Разработчики писали (или мне показалось), что свои настройки нужно записывать в metatrader.md . Но почему агент его не читает сам ???
Читает автоматически. Это прописано как стартовая инструкция.
Где именно лежит этот файл у вас?
Простенькая задачка, которая раньше съедала 2-5% теперь съедает все 50%
Какого размера ваш кастомный metatrader.md файл?
Задачка на ваш взгляд может быть простенькой и даже в пару строк, но это не имеет никакого отношения к объему произведенной работы агентом.
По сути агент крутит цикл:
берем инструкцию получаем задачу while(цель не достигнута && счетчик шагов < Limit) { ищем методы достижения цели }Поэтому затраты на 99% на инструкции и внутри агентского цикла.
И можно даже сделать предположение, что чем проще описана задача, тем больше может потратить ресурсов (любой) агент и тем хуже будет результат, требующий еще несколких циклов доработки.