Запуск скрипта через советник - страница 9

 

И у меня есть мои пуговицы!

Теперь я просто сделаю укладку.

 
onewithzachy:

Привет, Дадас,

1. Попробуйте, насколько это возможно, смайл советника не кликабелен.

2. Не публикуйте де-компилированный код. Скомпилированные коды - это материалы, защищенные авторским правом, принадлежащие их владельцу. Декомпилируя его, вы нарушаете авторские права владельца. mql4-mql5 .com принадлежат MetaQuotes (MQ), и MQ не поддерживает нарушение авторских прав.

1. Что вы имеете в виду?

Я нажимаю на смайлик, когда мой советник находится на графике и открывается панель управления советником - всегда, когда я нажимаю один раз на "X", FROWN или SMILE.

2. Ладно, удалил его - но он поставляется бесплатно, да еще и с демо-версией, так в чем проблема?

И я не декомпилировал ее! Я выложил .ex4, а не .mq4! У меня нет .mq4 для скрипта OneClickTrading.

3. и 4. не имеют значения - я нашел то, что мне нужно!

 
Dadas:

1. Что вы имеете в виду?

Я нажимаю на смайлик, когда мой советник находится на графике и открывается панель управления советником - всегда, когда я нажимаю один раз на "X", FROWN или SMILE.

2. Ладно, удалил его - но он поставляется бесплатно, да еще и с демо-версией, так в чем проблема?

И я не декомпилировал ее! Я выложил .ex4, а не .mq4! У меня нет .mq4 для скрипта OneClickTrading.

3. и 4. не имеют значения - я нашел то, что мне нужно!

Привет, Дадас,

1. Ты прав насчет номера 1. Смайлик жестко закодирован в MT. Мой советник работает в цикле, поэтому нажатие на него не открывает окно свойств.

2. Он поставляется бесплатно без исходного кода, а вы говорили: "Я пытался найти бесплатный декомпилятор, но не смог. Помощь ценю - может вы, ребята, можете сделать что-нибудь с этим файлом?" .

3. Вы уже нашли это в ho ho и все же вы продолжаете спрашивать, поэтому я ответил.

 
onewithzachy:

Привет, Дадас,

3. Ты уже нашел это в хо-хо, но все равно продолжаешь спрашивать, поэтому я ответил.

Нет, я не нашел это в твоем ho ho!

Я нашел это здесь: https://www.mql5.com/go?link=https://www.fx1.net/wiki/pmwiki.php/MT4GUI/MT4GUI

- Вы, должно быть, пропустили мое предыдущее сообщение.

И он работает!!!

Может быть, в вашем хохо то же самое, я не знаю.

То, что я нашел, четко объяснено, и это то, что мне было нужно.

Сейчас советник вызывает несколько различных скриптов, в зависимости от ситуации.

Он открывает и закрывает ордера автоматически, или вручную, по выбору.

Он отключает кнопку Experts, когда это необходимо.

Далее я введу кнопки ON/OFF для различных функций.

Затем, окно формы для ввода лота, если LotManagement выключен.

Затем, возможно, я помещу 3 разных эксперта в один с возможностью переключения.

В конце концов, я буду думать о том, чтобы сделать это отдельное приложение,

но это долгий путь, потому что у меня пока нет навыков.

P.S. Я проверил - ваше хо-хо полностью отличается от того, что я нашел. BTW, я нашел его на этом форуме!

 

Привет, ребята,

Теперь мой советник выглядит так:

И вы можете видеть, что он работает.

Но все еще не закончен.

 

На случай, если кто-то ищет эту информацию,

вы можете даже запустить другой советник из другого советника вот так:

#include <WinUser32.mqh>
#define MT4_WMCMD_REMOVE_EXPERT   33050

int start() {
if(ConditionsForOpeningMySecondEA==true) 
{

DisableExperts(); // when Experts enabled - disables Experts
RemoveEA();
DisableExperts(); // when Experts disabled - enables Experts
RunMyEA();

{
           }

void DisableExperts() // Emulates keyboard event for Ctrl+E
   {
   keybd_event(17, 0, 0, 0); // CTRL down
   keybd_event(69, 0, 0, 0); // E down
   keybd_event(69, 0, 2, 0); // E up
   keybd_event(17, 0, 2, 0); // CTRL up
   }

void RemoveEA()
   {
   PostMessageA(hwnd,WM_COMMAND,33050,1);
   }


void RunMyEA() { // Runs another EA with HOTKEY assigned
   keybd_event(18, 0, 0, 0); // ALT down
   keybd_event(69, 0, 0, 0); // E down
   keybd_event(69, 0, 2, 0); // E up
   keybd_event(18, 0, 2, 0); // ALT up
}

Я использую это, и это работает.
 

BTW вместо

void DisableExperts() // Emulates keyboard event for Ctrl+E
   {
   keybd_event(17, 0, 0, 0); // CTRL down
   keybd_event(69, 0, 0, 0); // E down
   keybd_event(69, 0, 2, 0); // E up
   keybd_event(17, 0, 2, 0); // CTRL up
   }

используйте

#include <WinUser32.mqh>
#import "user32.dll"
  int GetAncestor(int hWnd, int gaFlags);
#import

void DisableExperts() // Emulates keyboard event for Ctrl+E
   {
   int hwnd = GetAncestor(WindowHandle(Symbol(),Period()),2);
   PostMessageA(hwnd,WM_COMMAND,33020,1);
   }

PS ALT + E ничего не делает

 
qjol:

BTW вместо

использовать

PS ALT + E делает замечание


Alt+E по умолчанию ни к чему не привязана.

Вы должны сначала назначить его на что-то.

Я только что отредактировал, теперь все правильно.

 
Да, работает отлично, спасибо!
 

Привет всем,

Спасибо за вклад, сделанный здесь.

Я новичок в кодинге и хотел бы создать советника, который обрабатывает скрипты для размещения моих ордеров, но я хотел бы, чтобы скрипты выполнялись с помощью горячих клавиш. Я использую MT4. Есть предложения, как я могу сделать это? На данном этапе я не очень понимаю, как установить связи, чтобы это стало реальностью.

Ваши предложения приветствуются!


Заранее спасибо :).

Причина обращения: