Собсно, кому подходит брокер-зависимое решение, тот пусть пишет под FDK, ничего против не имею.
Дальновидные разработчики ТС пишут свои стратегии на независимых языках. Затем просто пишут взаимодействие с нужным торговым API.
Например, мои MQL4-советники, как это не парадоксально, не зависят от MQL4. И только когда дело доходит до отправки торгового приказа, то если идет запуск на MT4, то подставляется OrderSend из MLQ4. Если на FDK - аналог из FDK
Т.е. полностью платформо-независимое решение. Другое дело, что если вам нужно работать с Level2-данными (реал-тайм, история), то в MQL4 нет ничего для этого. Поэтому некоторые ТС просто физически невозможно написать на чистом MQL4. А на FDK - легко.
Сам же FDK - это удобная обертка FIX API (QuickFix), сделанная под C#. Если вы будете смотреть логи, то там будут сплошные FIX-сообщения.
Т.е. торговый сервер практически понятия не имеет, торговые приказы ему идут от FDK или от FIX.
Но FDK помимо торгового API имеет еще и исторический API. Т.е. все в одном. Хотелось бы, чтобы когда-нибудь там был какой-нибудь бэктестерный SDK. Ну и в последнюю очередь (мои пожелания) визуализационный SDK (чтобы индикаторы визуализировать).
Короче, развивать и развивать можно. В MQL сильна только визуализационная часть. Остальное - относительно слабое. Это и торговый API (latency уступает некоторым решениям), исторический API (история только M1 и только по Bid), бэктестер (жутко неточный).