Заблокировать открытие сделок. - страница 2

 
urdala:

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

Можно 220 вольт подвести к кнопке Enter)


Кладите на счет денег чтобы хватило только на один стоп.
 
ну как вариант  - закрывать с помощью winapi диалоговое окно торговли если кто-то вдруг надумал его открыть. Отключить торговлю в один клик с графика и закрывать окно свойств через winapi , чтоб нельзя было включить торговлю в один клик. 
 
dimeon:
ну как вариант  - закрывать с помощью winapi диалоговое окно торговли если кто-то вдруг надумал его открыть. Отключить торговлю в один клик с графика и закрывать окно свойств через winapi , чтоб нельзя было включить торговлю в один клик. 

думаю не поможет. еще ведь можно скриптами открыть.


это не для себя подстраховка. это программа Риск-менеджер для РАЗЛИЧНЫХ пользователей.

вот и стоит задача ограничить доступ, после череды неудачных сделок.

 
urdala:

думаю не поможет. еще ведь можно скриптами открыть.


это не для себя подстраховка. это программа Риск-менеджер для РАЗЛИЧНЫХ пользователей.

вот и стоит задача ограничить доступ, после череды неудачных сделок.


Если этот запрет не для себя то есть идея. Сам не знаю как это сделать, не пробовал, но кажется это возможно. 
При определенном условии (число отрицательных сделок, определенный уровень потерь, и т.д.) экспертом производятся след. действия: 
1) позиция закрывается либо локируется, 
2) изменяется пароль терминала (на мастер-пароль известный риск-менеджеру), 
3) периодически производится переподключение (чтобы при изменении пароля к терминалу не было доступа).
 

Выполнил задачу простой блокировкой окна открытия ордера.

#import "user32.dll"
 int FindWindowW(string lpClassName,string lpWindowName);
 int PostMessageA(int hWnd, int Msg, int wParam, int lParam);
#import
string  Str = "#32770";
string  NameWindow = "Ордер";


///////////////////////////////////////////////////////////////////////////
//функция закрытия окна Ордер
void OrderWindow()
   {
    int hwnd = FindWindowW(Str,NameWindow);
    if(hwnd!=0)
        {
         Print("Открыто окно ордер. Нельзя открывать ордера. Закрываем окно.");
         PostMessageA(hwnd, WM_CLOSE, 0, 0);
        }
   }
Если трейдер попытается открыть ордер через F9, кликнув правой кнопкой на графике Торговля - Новый ордер или через кнопку Новый ордер, то данная функция закроет окно открытия ордера.
 

:-)))   Вам не смешно ?

трейдер сначала нажмет кнопку  атоторговля - остановит советник а потом нажмет F9 и откроет заветный ордер

--

urdala:

Подскажите пожалуйста, как можно программно из советника заблокировать возможность открытия сделок в терминале?

Хоть ручных, хоть из других советников.


к чему такая задача ?

откуда она возникла ?

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