VisualOrders
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «#visual orders_corr.mq4» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
VisualOrders — индикатор для MetaTrader 4, предназначенный для визуального отображения торговых ордеров на графике цены. Он рисует линии и стрелки, соответствующие открытым и закрытым позициям, позволяя трейдеру наглядно оценить состояние своих сделок прямо на ценовом графике.
Индикатор выводит на экран информацию об эквити счёта и текущей прибыли, а при включении соответствующей настройки — отображает уровни тейк-профита и стоп-лосса для каждой позиции. Доступны режимы показа текущих и исторических ордеров с возможностью фильтрации по типу сделки.
Визуальные объекты создаются непосредственно на графике и обновляются при каждом новом тике. Индикатор не исполняет торговые операции и не влияет на баланс счёта, а служит исключительно инструментом визуализации.
Настройки программы
| Настройка | Описание |
|---|---|
| _ModeProf | Текстовое описание режима отображения прибыли. |
| ModeProf | Режим отображения информации о прибыли (1 — текстовый формат, 2 — метки на графике). |
| _orders | Текстовое описание параметра отображения ордеров. |
| _Type | Текстовое описание фильтра по типу ордера. |
| Type | Фильтр по типу ордера: 0 — все, 1 — только Buy, -1 — только Sell. |
| CurOrders | Включает отображение текущих (открытых) ордеров на графике. |
| lblSize | Размер меток и стрелок на графике (от 1 до 4). |
| HistOrders | Включает отображение исторических (закрытых) ордеров на графике. |
| ShowProfits | Отображает величину прибыли для исторических ордеров. |
| ShiftProfits | Смещение текста с информацией о прибыли по вертикали. |
| lShowTargets | Включает отображение уровней тейк-профита и стоп-лосса для каждой позиции. |
Поиск по коду файла
#property indicator_chart_window
#import "shell32.dll" //Connect a dll (provided with Windows)
int ShellExecuteA(int hwnd,string Operation,string File,string Parameters,string Directory,int ShowCmd);
#import "user32.dll"
int MessageBoxA(int hWnd ,string lpText,string lpCaption,int uType);
#import
extern string _ModeProf="??????? 1-???????.,2-??????";
extern int ModeProf=2;
extern string _orders="?????????? ?????? ?? ???????:";
extern string _Type = "0 ???,-1 Sell,1 Buy";
extern int Type = 0;
extern bool CurOrders=true;
extern int lblSize=1;
extern bool HistOrders=true;
extern bool ShowProfits=false;
extern int ShiftProfits=0;
extern bool lShowTargets=false;
double prev_profit=0, cur_prof5=0, prev_prof5=0;
int wh=0;
int init()
{
// код доступен только после оплаты
}
int deinit()
{ObjectsDeleteAll();
/*for(int i=0;i<30;i++)
{
ObjectDelete(Symbol()+DoubleToStr(Period(),0)+"vopen"+i+" ????? = "+OrderMagicNumber());
ObjectDelete(Symbol()+DoubleToStr(Period(),0)+"vtake"+i+" ????? = "+OrderMagicNumber());
ObjectDelete(Symbol()+DoubleToStr(Period(),0)+"vstop"+i+" ????? = "+OrderMagicNumber());
}*/
return(0);
}
double Trunc(double v=0)
{
return(StrToDouble(DoubleToStr(v,0)));
}
double TakeProfit=0, StopLoss=0;
int start()
{
// код доступен только после оплаты
}
/*void deleteAll()
{
string tmp,prefix;
int i,total;
ObjectDelete("VOSignal");
prefix="time_order_trades_";total=OrdersTotal();
for(i=0;i<total+5;i++)
{
tmp=prefix+DoubleToStr(i,0);
ObjectDelete(tmp);
ObjectDelete(tmp+"O");
ObjectDelete(tmp+"C");
ObjectDelete(tmp+"OA");
ObjectDelete(tmp+"CA");
ObjectDelete(tmp+"Cprof1");
ObjectDelete(tmp+"Cprof2");
}
prefix="time_order_hist_";total=OrdersHistoryTotal();
for(i=0;i<total+15;i++)
{
tmp=prefix+DoubleToStr(i,0);
ObjectDelete(tmp);
ObjectDelete(tmp+"O");
ObjectDelete(tmp+"C");
ObjectDelete(tmp+"OA");
ObjectDelete(tmp+"CA");
ObjectDelete(tmp+"Cprof1");
ObjectDelete(tmp+"Cprof2");
}
ObjectDelete("curtime");
ObjectDelete("profit");
ObjectDelete("profit2");
ObjectDelete("Account");
ObjectDelete("time_TP");
ObjectDelete("time_SL");
ObjectDelete("time_mar");
ObjectDelete("time_per");
ObjectDelete("time_lot");
ObjectDelete("time_lot100");
ObjectDelete("time_vv1");
ObjectDelete("time_vv2");
ObjectDelete("time_sr1");
ObjectDelete("time_sr2");
}*/
void ShowOrders(int mode=MODE_TRADES)
{
int i=0; string tmp=""; color clr2=0,clr1=Blue; string prefix="time_order_trades_"; int total=0;
double CT, CP;
if(mode==MODE_TRADES) {prefix="time_order_trades_";total=OrdersTotal();}
if(mode==MODE_HISTORY) {prefix="time_order_hist_";totПоказано первые 50% кода (символов: 10186)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.