Запросто могли, если какое-то достаточно продолжительное время не было операций на счете.
Это называется не блокировка, а удаление счёта или совсем, как я на себе испытал, или в архив. Из архива деньги можно вернуть, а если удалили, то уже с концами...
Это называется не блокировка, а удаление счёта или совсем, как я на себе испытал, или в архив. Из архива деньги можно вернуть, а если удалили, то уже с концами...
Сути (возможности продолжения работы со счетом) это не меняет. Надо обращаться к брокеру, переоткрывать счет и продолжать работу с новым счетом или возвращать эту сумму на свой счет в банке
Очень редко работаю с графическими объектами, возникла необходимость закрасить фон для OBJ_LABLE (установить OBJPROP_BGCOLOR) . Как оказалось, установка цвета фона невозможна для объекта типа OBJ_LABLE, необходимо использовать OBJ_EDIT. При использовании OBJ_EDIT возникла новая проблема - необходимость установить размер OBJPROP_XSIZE и OBJPROP_YSIZE, чтобы в соответствующие размеры объекта помещался весь текст.
Вопрос: как определить размер OBJPROP_XSIZE и OBJPROP_YSIZE, что бы туда поместился весь текст? Рассмотрел два варианта: 1. Создание объекта OBJ_LABLE, считывание размеров, удаление объекта OBJ_LABLE. Не подходит из-за того, что считывание размеров возможно только после фактического создания объекта и не возможно, когда объект находится в очереди на ChartRedraw.
2. Использование TextSetFont с последующим TextGetSize. Не подходит, так как результат кардинально отличается от результатов метода №1, отличия в 2.5 - 2.9 раз в зависимости от размера шрифта. Возможно причина в 4К мониторе и 175% DPI.
Sergey Dzyublik: Очень редко работаю с графическими объектами, возникла необходимость закрасить фон для OBJ_LABLE (установить OBJPROP_BGCOLOR) . Как оказалось, установка цвета фона невозможна для объекта типа OBJ_LABLE, необходимо использовать OBJ_EDIT. При использовании OBJ_EDIT возникла новая проблема - необходимость установить размер OBJPROP_XSIZE и OBJPROP_YSIZE, чтобы в соответствующие размеры объекта помещался весь текст.
Вопрос: как определить размер OBJPROP_XSIZE и OBJPROP_YSIZE, что бы туда поместился весь текст? Рассмотрел два варианта: 1. Создание объекта OBJ_LABLE, считывание размеров, удаление объекта OBJ_LABLE. Не подходит из-за того, что считывание размеров возможно только после фактического создания объекта и не возможно, когда объект находится в очереди на ChartRedraw.
2. Использование TextSetFont с последующим TextGetSize. Не подходит, так как результат кардинально отличается от результатов метода №1, отличия в 2.5 - 2.9 раз в зависимости от размера шрифта. Возможно причина в 4К мониторе и 175% DPI.
Во-первых, размер текста и размер объекта - это не одно и тоже. Как минимум должен существовать бордюр. И поэтому эти значения не могут совпадать. Во-вторых, лучше использовать OBJ_BITMAP_LABEL, у которого нет никаких ограничений. А если уж его использовать, то лучше тогда воспользоваться классом CCanvas.
#include <Canvas\Canvas.mqh>
void SetLabel(CCanvas &c, long achart, string name, int wnd, string text, color clr_text, color clr_bckgrnd, int x, int y, int corn=0, int fontsize=8, int border=2, string font="Tahoma", uchar transparency=0xFF)
{
uint w,h;
c.FontSet(font, fontsize);
c.TextSize(text, w, h);
if(!c.CreateBitmapLabel(achart,wnd,name,x,y,w+border*2,h+border*2,COLOR_FORMAT_ARGB_NORMALIZE))
Print("Error creating canvas object: ", GetLastError());
c.Erase(ColorToARGB(clr_bckgrnd,transparency));
c.TextOut(border,border,text,ColorToARGB(clr_text,transparency));
c.Update();
}
voidOnStart(){
string obj_name = "test_obj";
string text = "AAAA::BBBB";
int font_size = 17;
string font_name = "Tahoma";
CCanvas Can;
SetLabel(Can,0, obj_name, 0, text, clrYellow, clrBlue, 100, 100, 0, font_size,3, font_name, 0x80);
Sleep(10000);
Can.Destroy();
}
В результате получаем тот же объект, только с большими возможностями. Например, добавив прозрачность текстовой метки.
Не могли. Если не можете войти, то где вы видите баланс счёта? А вообще отсутствие средств на счёте и тем более их количество не запрещает входить.
Запросто могли, если какое-то достаточно продолжительное время не было операций на счете.
Запросто могли, если какое-то достаточно продолжительное время не было операций на счете.
Это называется не блокировка, а удаление счёта или совсем, как я на себе испытал, или в архив. Из архива деньги можно вернуть, а если удалили, то уже с концами...
Это называется не блокировка, а удаление счёта или совсем, как я на себе испытал, или в архив. Из архива деньги можно вернуть, а если удалили, то уже с концами...
Сути (возможности продолжения работы со счетом) это не меняет. Надо обращаться к брокеру, переоткрывать счет и продолжать работу с новым счетом или возвращать эту сумму на свой счет в банке
Без указания флага общей папки все работает, с указанием флага общей папки кроме имен больше ничего не получить.
Это ограничение или какой то баг ?
В МТ4, во время отладки индикаторов, отладчик намертво повисает если переключиться на график.
Воспроизводится, например, во время запуска отладки стандартного индикатора CCI.
1. Поставить точку останова;
2. Нажать F5;
3. Переключиться на график.
Результат - график отладчика зависает.
Также можно просто несколько раз нажать F5 во время отладки - график повисает.
Билд 1260.
Настройки отладчика:
Результат поиска удаляет часть текста.
Вот оригинал.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Тестер стратегий MetaTrader 5: ошибки, баги, предложения по улучшению работы
fxsaber, 2020.05.11 20:31
Наверное, Тестеру нет смысла создавать opt-файлы, у которых Header.passes_passed == 0.Как оказалось, установка цвета фона невозможна для объекта типа OBJ_LABLE, необходимо использовать OBJ_EDIT.
При использовании OBJ_EDIT возникла новая проблема - необходимость установить размер OBJPROP_XSIZE и OBJPROP_YSIZE, чтобы в соответствующие размеры объекта помещался весь текст.
Вопрос: как определить размер OBJPROP_XSIZE и OBJPROP_YSIZE, что бы туда поместился весь текст?
Рассмотрел два варианта:
1. Создание объекта OBJ_LABLE, считывание размеров, удаление объекта OBJ_LABLE.
Не подходит из-за того, что считывание размеров возможно только после фактического создания объекта и не возможно, когда объект находится в очереди на ChartRedraw.
2. Использование TextSetFont с последующим TextGetSize.
Не подходит, так как результат кардинально отличается от результатов метода №1, отличия в 2.5 - 2.9 раз в зависимости от размера шрифта.
Возможно причина в 4К мониторе и 175% DPI.
Спасибо Geess за решение.
Необходимо домножить на -10 размер шрафта при передаче в TextSetFont.
Очень редко работаю с графическими объектами, возникла необходимость закрасить фон для OBJ_LABLE (установить OBJPROP_BGCOLOR) .
Как оказалось, установка цвета фона невозможна для объекта типа OBJ_LABLE, необходимо использовать OBJ_EDIT.
При использовании OBJ_EDIT возникла новая проблема - необходимость установить размер OBJPROP_XSIZE и OBJPROP_YSIZE, чтобы в соответствующие размеры объекта помещался весь текст.
Вопрос: как определить размер OBJPROP_XSIZE и OBJPROP_YSIZE, что бы туда поместился весь текст?
Рассмотрел два варианта:
1. Создание объекта OBJ_LABLE, считывание размеров, удаление объекта OBJ_LABLE.
Не подходит из-за того, что считывание размеров возможно только после фактического создания объекта и не возможно, когда объект находится в очереди на ChartRedraw.
2. Использование TextSetFont с последующим TextGetSize.
Не подходит, так как результат кардинально отличается от результатов метода №1, отличия в 2.5 - 2.9 раз в зависимости от размера шрифта.
Возможно причина в 4К мониторе и 175% DPI.
Во-первых, размер текста и размер объекта - это не одно и тоже. Как минимум должен существовать бордюр. И поэтому эти значения не могут совпадать.
Во-вторых, лучше использовать OBJ_BITMAP_LABEL, у которого нет никаких ограничений.
А если уж его использовать, то лучше тогда воспользоваться классом CCanvas.
В результате получаем тот же объект, только с большими возможностями. Например, добавив прозрачность текстовой метки.