Помощь в кодировании - страница 488

 
poruchik:
Привет, Младен!

Я часто смотрю картинки с узорами. Попросил сделать индикатор, чтобы при нажатии на кнопку на графике появлялась картинка с паттерном. За основу я взял кнопки с .mql5. Остальное собрал из 2 индикаторов. Индикатор работает, но выводит очень маленькие картинки.

Увеличьте размер выводимых картинок и если можно выбор расположения картинки - центр или правый нижний угол.

хотелось бы видеть дирки такого размера на графике...

poruchik

Так что зря

Это единственная информация, которую я нашел относительно растровых изображений (когда они создаются как растровые изображения, как это сделано в том коде :

//--- установить область видимости для изображения; если значения ширины или высоты

//--- превышают ширину и высоту (соответственно) исходного изображения,

//---оно не отрисовывается; в обратном случае,

//--- отрисовывается только часть, соответствующая этим значениям.

Это означает, что metatrader не умеет "растягивать" растровые объекты.

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

 

Хорошо, брат.

может быть это поможет

==========

И посмотри это https://www.mql5.com/ru/articles/261

Я перекодировал его в mq4

работает частично - показывает 2 картинки и собака лает

Файлы:
gbpusdm15.png  51 kb
cci_semafor.zip  25 kb
 

Спасибо. Я тоже это проверю...

 
mladen:
Вам придется сделать так, чтобы способ определения лотов последнего ордера был другим.

_________________

Проблема заключается в следующем: когда вы вызываете эту функцию LotsizeCalc() и новый ордер открывается, то проблем не возникает. Но если по какой-то причине ордер не открывается, то ваш "tradeNumber" остается увеличенным, несмотря на то, что ордер не был открыт.

Лучше просто подсчитать количество открытых ордеров определенного типа и использовать это число вместо "tradeNumber" (таким образом, даже в случае перезапуска советника, советник будет работать корректно - если вы используете какое-то переменное значение, то при перезапуске советника он будет работать неправильно)

Спасибо Младен,

Мой код работает!

 
xtractalpha:
Спасибо Младен, мой код работает!

Хорошо

Счастливая торговля

 

porucik

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

 

Я не понимаю, что такое битмап. Необходимо, чтобы я нажал на кнопку - появилась картинка.

Ладно, спасибо за помощь!

https://www.mql5.com/en/market/product/2767

Файлы:
 

здравствуйте,

могут ли mladen, mrtools помочь мне добавить следующие настройки для индикатора--- Rsi bar chart v2.02 mtf & alerts

---можно ли окрашивать бары в разные цвета, когда они пересекаются выше или ниже средней линии (50 уровень для rsi перспективы); --т.е. выше 50 линии один цвет и ниже 50 уровня другой цвет.

---можно ли добавить скользящую среднюю на индикатор в отдельном окне, как мы можем добавить скользящую среднюю на основной график (как показано на рисунке ниже).

Прикрепляю индикатор и изображение.

rsi_bar_chart_v2.02_mtf_amp_alerts.mq4

Заранее спасибо, ваша помощь будет очень признательна.

 

Здравствуйте,

У меня есть система оповещения, которая сообщает мне, когда один из моих индикаторов становится перепроданным или перекупленным, а также сообщает, сколько из 21 индикатора в настоящее время перекуплены. Энумерация не верна, и я не понимаю почему. Он всегда сообщает, что 2 индикатора перекуплены или перепроданы, в то время как должен быть 1. Кроме того, иногда он говорит, что 7 индикаторов перекуплены, в то время как на самом деле их только 5. Значит, он не суммируется должным образом, не мог бы кто-нибудь взглянуть на этот код? Это одни и те же строки кода для всех 21 индикаторов.

}

if ((Buffer1[0] < 1) && (AlertPlayedonBar1 != Bars)) OverboughtAlertAllowed1 = 0;

else AlarmTotal = AlarmTotal+1;

if ((Buffer1[0] > 1) && (AlertPlayedonBar1 != Bars) && (OverboughtAlertAllowed1==0))

{

AlarmTotal = AlarmTotal+1;

Alert(+Timeframe+"m: Индикатор1 "+Symbol()+" перекуплен. "+AlarmTotal+" из 21 перекуплен");

PlaySound("expert.wav");

AlertPlayedonBar1 = Bars;

OverboughtAlertAllowed1 = 1;

}

if ((Buffer1[0] > 0) && (AlertPlayedonBar1 != Bars)) OversoldAlertAllowed1 = 0;

else AlarmTotal1 = AlarmTotal1+1;

if ((Buffer1[0] < 0) && (AlertPlayedonBar1 != Bars) && (OversoldAlertAllowed1==0))

{

AlarmTotal1 = AlarmTotal1+1;

Alert(+Timeframe+"m: indicator1 of "+Symbol()+" is oversold. "+AlarmTotal1+" of 21 are oversold");

PlaySound("expert.wav");

AlertPlayedonBar1 = Bars;

OversoldAlertAllowed1 = 1;

}

Заранее спасибо