Лента последних комментариев


0
Импульс часто сопровождаетя скачком спреда. По-этому не помешает его контроль.
Это были неуловимые сигналы для работы, по росту импульса.
Не забывай за работу на откате.
avatar

kvashnin007

  • 29 января 2025, 23:28
0
вчера смотрел советник секрет импульс, но даже близко сделать не удалось.


Тут с наскока не выйдет.

Когда открывать сделку?
Там в описании что-то за fvg писали на младших TF во времена американской сессии.
Время работы ты задать можешь. А как открываться?

Когдато задавался подобными вопросами. Правда там стратегия другая. То, что на картинке, это выбор полос, которые обрабатываются по своему алгоритму.

Дам картинки. Должны натолкнуть на мысли.

ПЕРВАЯ: как определять имбаланс по уму.



ВТОРАЯ: как определять импульсную свечу, тоже, по уму.



Посмотри. Может натолкнет на здравые мысли.
avatar

kvashnin007

  • 29 января 2025, 23:16
0
Много хочешь. Тормознись на чем-то. Сделай. Иди дальше.
Нейросети против вероятностей проигрывают.
avatar

kvashnin007

  • 29 января 2025, 19:54
0
Я хочу написать советник на основе нейросетей.
Потихоньку разбираюсь
avatar

AM2

  • 29 января 2025, 19:48
0
Что касается отыгрыша импульса, то смысл в работе по импульсу если и есть, то не уловим. Я не за новости с бешенным спредом. Импульсным движением почти всегда снимают или пробивают уровни. С последующим возвратом не менее 50% от импульса.

Свойства импульса:

— За тик цена меняется больше, чем «обычно».
— Тиковый объем тоже растет до некоторых пор. Потом цена растет за счет других трейдеров
(рали) с понижением объема. Просто за счет снятия блокирующих стен из множества
ордеров. Можно смотреть по стакану. Неудобно.
— Чаще всего образуется дисбаланс, но о нем мы узнаем позже. Значительно позже.
Но цену отката можно прикинуть.

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

Отловить импульс.
Есть хороший индикатор Similar, который позволяет вылавливать импульсы. Слегка доработать. Сделать уровни динамическими. Например по Болинджеру. Но это таки индикатор.
Я разрабатывал алгоритм работы по времени. Смысл в том, что каждую единицу времени, например 10 милисекунд, мы сравниваем значение цены с предыдущим значением. Если разрыв в цене больше заданного значения, то выставляем отложенный ордер (рисуем линию) на откат на небольшом расстоянии Step от текущей цены. Дальше тралим эту линию за ценой. Причем дистанция сокрашается. Можно с множителем, можно — пара пипсов с каждым тиком, а можно привязать к стоимости изменения цены за тик. Когда иссякает ралли количество тиков падает быстрее, чем цена. Берем соотношение умножанм на дистанцию. При касании линии ценой открываем рыночный ордер.

Да. Думаю, тебе это малоинтересно.
avatar

kvashnin007

  • 29 января 2025, 19:48
0
По лесенкам могу скинуть ТЗ. Один день и готово.
avatar

kvashnin007

  • 29 января 2025, 18:26
0
Не люблю обращениц к библиотекам. Все равно — черный ящик.
Предпочитаю функции в советнике. Там все видно и понятно. Можно подкорректировать под свои нужды легким движением руки. А так…
Смотрел как-то код библиотеки. Универсальность — это слабость. Потеря времени. И для меня не удобно и не прозрачно. Да иеще убедиться перед… Код протестировать перед… Как?

Длин. МТ4 длиннее и тяжелее, но проще и работает понятно как. Да и чушь, что в mql5 невозможно писать свои функции ручками.
avatar

kvashnin007

  • 29 января 2025, 18:23
0
ответ от гигачата :D 

нужно написать функцию открытия ордеров для реальных счетов на MQL5

Открытие ордера на реальном счете в MetaTrader 5 требует использования функций API для отправки торговых команд через торговый сервер. В MQL5 это делается с помощью встроенных функций, которые позволяют отправлять запросы на открытие ордеров, установку стоп-лоссов и тейк-профитов, а также закрытие позиций.

Вот пример простой функции для открытия рыночного ордера на покупку (BUY) или продажу (SELL):

#include <Trade\Trade.mqh>

CTrade trade; // Объект для выполнения торговых операций

bool OpenMarketOrder(const string symbol, const ENUM_ORDER_TYPE order_type,
                     const double volume, const double stoploss=0, 
                     const double takeprofit=0)
{
   // Создаем структуру для параметров ордера
   MqlTradeRequest request;
   ZeroMemory(request);

   // Заполняем параметры запроса
   request.action = TRADE_ACTION_DEAL;
   request.symbol = symbol;
   request.volume = volume;
   request.type_filling = ORDER_FILLING_FOK;

   switch(order_type) {
      case ORDER_TYPE_BUY:
         request.price = SymbolInfoDouble(symbol, SYMBOL_ASK);
         break;
      case ORDER_TYPE_SELL:
         request.price = SymbolInfoDouble(symbol, SYMBOL_BID);
         break;
      default:
         Print("Неверный тип ордера", order_type);
         return false;
   }

   // Устанавливаем стоп-лосс и тейк-профит, если они заданы
   if(stoploss > 0) {
      request.sl = stoploss;
   }
   if(takeprofit > 0) {
      request.tp = takeprofit;
   }

   // Отправляем запрос на открытие ордера
   bool result = trade.Send(request);

   if(result) {
      Print("Ордер успешно открыт");
   } else {
      Print("Ошибка при открытии ордера: ", trade.ResultRetcode(), " - ", trade.ResultComment());
   }

   return result;
}
Как работает эта функция:
Создание объекта CTrade: Используется объект trade, который позволяет выполнять торговые операции.
Заполнение структуры MqlTradeRequest: Структура содержит все необходимые параметры для создания торгового запроса.
Установка типа ордера: В зависимости от переданного параметра order_type устанавливается цена исполнения ордера (либо по цене ASK для покупки, либо по BID для продажи).
Отправка запроса: С помощью метода Send() отправляется запрос на открытие ордера.
Обработка результата: Если операция прошла успешно, выводится сообщение об успешном открытии ордера. В случае ошибки возвращается код ошибки и комментарий.
Пример использования функции:

void OnStart() {
   // Открываем ордер на покупку 0.01 лота по паре EURUSD без стоп-лосса и тейк-профита
   OpenMarketOrder("EURUSD", ORDER_TYPE_BUY, 0.01);
}

Важные моменты:
Перед использованием этой функции убедитесь, что ваш торговый счет подключен и имеет достаточный баланс для выполнения торговой операции.
Код приведен только для примера и должен быть протестирован в тестовой среде перед использованием на реальном счете.
Убедитесь, что используете актуальные версии библиотек и документации MQL5.
avatar

AM2

  • 29 января 2025, 16:17
0
А что, Анндрей?
Слабо рискнуть репутацией?


присылайте видео работы советника в тестере.

вчера смотрел советник секрет импульс, но даже близко сделать не удалось.
там успешно торгует на реале. просадка минимальная
avatar

AM2

  • 29 января 2025, 09:03
0
Это не оптимизированный вариант, но рабочий. При желании займемся оптимизацией и правильными функциями. Вобщем топик для того и делался. Правда желающих поучаствовать четыре человека.Ты да Я, да Мы с Тобой.

Открываешь в редакторе любой советник. Жмешь «Сохранить как» «Мой кассовый аппарат».
Удаляешь весь код этого советника.
Потом на пустое место последовательно копируешь три части кода.

Жмешь «Компилировать».

В терминале окажется нужный советник под названием «Мой кассовый аппарат».
Оптимизировать можно по контрольным точкам. Перепроверять по тикам.

Удачи.
avatar

kvashnin007

  • 28 января 2025, 23:58
0
Смотрел на картинку…



смотрел…

Можно получить похожую. Просадка, правда, будет чуть побольше. Сделок в минус будет 30%.

Это вариант «лесенки» с малым шагом и тралом минимальной прибыли. Должен получиться частотник сеточного типа с локированием. Две независимые ветви (возможно полностью). Получится двойное локирование.
Без индикаторов. С минимальным количеством переменных для оптимизации.
avatar

kvashnin007

  • 28 января 2025, 23:49
0
А как собрать все три части в рабочий код, чтобы в живую посмотреть работу в тестере?
avatar

Aleh7999

  • 28 января 2025, 21:01
0
Почитал обсуждения советника.
Сделал вывод, что советник Робот GBPUSD — туфта.

Я бы на него не тратил время.
avatar

kvashnin007

  • 28 января 2025, 14:52
0
Андрей, я длохо понимаю идею изучать советники по визуализации и сделкам Если ты вот так «легко» определяешь стратегию, то этот советник уже максимум через полгода станет не актуальным.

Дал я тебе свой старый советник, который у меня работал на центовом счете, и даже в журнале не ругался. Давай возьмем его за основу. Его плюс в том, что практически при любых настройках, при любых изменениях цены он будет давать прибыль. Единственно, что надо подумать над ММ. Предусмотреть защиту от большой просадки. Просадка — это его слабое место.

SL и ТР можно и нужно выкинуть. Так. Еще пара изменений. Ерундовых. Ну и правильные функции + проверки с работой над ошибками. Большую часть изменений я могу за пару дней поправить.
avatar

kvashnin007

  • 28 января 2025, 14:20
0
Реквизиты
avatar

Denis2134

  • 28 января 2025, 13:56
0
Да. Советник, судя по картинке, шикарный.
Смущает, что это таки тестер.

Логика, как раз, не читается, ибо советника не имею и не гонял.
Но даже по картинке уже возникают вопросы. Порассуждаем логически.

Советник делает всреднем 100 сделок в день. За четыре года — 9850 сделок. При тех просадках по марже, что на картинке можно предположить, что делает он это минимальными лотами и сделки закрываются довольно быстро. Просадка по марже 6.8%.
прибыльная позиция после закрытия отщипывает от убыточной

Тут я не согласен от слова совсем.
Во-первых со смыслом предложения. Что означает — закрытая позиция отщипывет?
Во-вторых, если имеется ввиду, что кусочки убытков сокращаются кусочками прибыльных ордеров, то мы бы имели убыточных сделок на порядок больше 1.36%.Скорее еще больше.
Судя по практическому равенству ордеров на продажу и покупку, стратегия локовая. Я уже говорил за Lock4.

Дальше. Линия депозата прямая. Логично предположить, что ММ не предусматривает роста лотов от роста депозита, ибо линия была бы экспоненциальной.
Дико смущают абсолютная и относительная просадки. Цифры как-то не коррелируются. Относительная 1.47% к абсолютной 0.89% как бы нормально соотносится, но при этом 7622 к 105 — явно диссонанс. Логично наоборот. В купе с тем, что картинка из тестера, навязчиво возникают мысли о фотошопе.

А то, что авторы в описании ссылаются на возврат части спреда, то это абсолютно справедливо, хотя это к пониманию алгоритма не приближает.

ВЫВОД: КОТ В МЕШКЕ. Хотя, возможно, и породистый.
avatar

kvashnin007

  • 28 января 2025, 13:48
0
евро и фунт


вот фунт:



//--- Inputs
input int BB_Period             = 20;  // Bollinger Bands Period
input double BB_Deviation       = 1.0; // Deviation
input int ATR_Period            = 14;  // ATR Period
input int ATR_Lookback          = 50;  // Period for ATR Minimum
input double BB_Width_Threshold = 500; // Max BB Width for Squeeze
input double LotSize            = 0.01;// Initial Lot Size
input double Multiplier         = 2.0; // Martingale Multiplier
input int StopLoss_ATR          = 20;  // StopLoss (ATR multiples)
input int TakeProfit_ATR        = 30;  // TakeProfit (ATR multiples)
input int TrailingStep          = 222; // Trailing Stop Step (points)


настройки оптимизацией подбирай
avatar

AM2

  • 28 января 2025, 10:56
0
очень интересный советник. логика хорошо читается. прибыльная позиция после закрытия отщипывает от убыточной
avatar

AM2

  • 28 января 2025, 09:42