честно говоря, не знаю в чем стратегический замысел всех этих расчетов, но... с точки зрения математики - в них серьезный косяк (очень серьезный... недопустимый... ужасный)Товарищи программисты, что тут за косяк, не подскажете? Индикатор на золоте не корректно отображается.
честно говоря, не знаю в чем стратегический замысел всех этих расчетов, но... с точки зрения математики - в них серьезный косяк (очень серьезный... недопустимый... ужасный)
с точки зрения чистого разума под знаком синуса может стоять только безразмерное значение, смотрим что у нас:
MathSin(koef * (High - Low))
koef - норм, безразмерный
а вот High - Low - das ist falsch потому что результат будет в пипсах...
возможно, следует несколько исправить формулу?
например:
buf_1 = Close + MathSin(koef_small * (Close - Low)/(High - Low));
деление на 0 надо проверять)Посмотреть вложение 408670
Сделал так. С такой формулой ничего не отображается ни на каком инструменте.
А может как-то можно этот (High - Low) перевести в нужный формат?
Спасибо за отклик.деление на 0 надо проверять)
а какой формат нужный? я не знаю, какой стратегический замысел лежит в использовании тригонометрических функций... сдается мне, что он просто подгонял коэффициенты под нужный канал...
читая справку ты узнаешь, что в индикаторах никакие задержки НЕ работают.... и даже написано почему так сделаноЭлементарная функция Sleep (10000);, а не работает, задержки на 10 секунд нет.
Может подскажете в чем причина?
Посмотреть вложение 408695
void Sleep( int milliseconds // интервал ); |
vladradon подсказал. Оказывается этот синус вообще на показания индикатора не влияет. Просто закомментил его. Сейчас на всех парах работает.честно говоря, не знаю в чем стратегический замысел всех этих расчетов, но... с точки зрения математики - в них серьезный косяк (очень серьезный... недопустимый... ужасный)
с точки зрения чистого разума под знаком синуса может стоять только безразмерное значение, смотрим что у нас:
MathSin(koef * (High - Low))
koef - норм, безразмерный
а вот High - Low - das ist falsch потому что результат будет в пипсах...
возможно, следует несколько исправить формулу?
например:
buf_1 = Close + MathSin(koef_small * (Close - Low)/(High - Low));
double iBWMFI( string symbol, // имя символа int timeframe, // таймфрейм int shift // сдвиг ); |
Точнее размер выведется, а как определить цветНеобходима проверка цвета и размера столбца стандартного индикатора Market Facilitation Index. Открыл справку, а там выводится только одно значение:
Подскажите, плиз, каким образом можно вывести цвет и размер?
double iBWMFI(
string symbol, // имя символа
int timeframe, // таймфрейм
int shift // сдвиг
);
цвет-размер-стиль можно прописать примерно такНеобходима проверка цвета и размера столбца стандартного индикатора Market Facilitation Index. Открыл справку, а там выводится только одно значение:
Подскажите, плиз, каким образом можно вывести цвет и размер?
double iBWMFI(
string symbol, // имя символа
int timeframe, // таймфрейм
int shift // сдвиг
);
Цвета в индикаторе уже есть, даже буфера под каждый цвет, но как их вывести?цвет-размер-стиль можно прописать примерно так
#property indicator_type1 DRAW_LINE
#property indicator_style1 STYLE_SOLID
#property indicator_width1 1
#property indicator_color1 clrBlue
Текущее значение выше значения предыдущего бара, один цвет. Ниже предыдущего — другой цвет. Равно как значение любого бара выше\ниже предыдущего.Точнее размер выведется, а как определить цвет
ну, примерно так ... (предположим, что есть два интервала с разными цветами)Цвета в индикаторе уже есть, даже буфера под каждый цвет, но как их вывести?
Понял, нужно сравнивать значение индикатора и объём на нужном баре и на баре предшествующем ему, типа так:ну, примерно так ... (предположим, что есть два интервала с разными цветами)
value -значение которое мы хотим вывести
if(value>1)
{
bufer1=value;
bufer2=EMPTY_VALUE;//нет ничего в буфере
}
if(value>2)
{
bufer1=EMPTY_VALUE;
bufer2=value;
}
Отвечу сам себе) нашел. Но дополнительный пример не будет лишним.Всем привет, подскажите пожалуйста, есть ли способ сделать кнопку на графике, чтобы она по щелчку скрывала-показывала подвальный индикатор? Как если бы мы убрали-поставили галочку в свойствах индикатора во вкладке "отображение". Желательно пример. Спасибо!
разговоры с самим собой - опасный признакОтвечу сам себе) нашел. Но дополнительный пример бы не будет лишним.
Надо смотреть что ещё на графике присутствует. Может лучше через шаблон чем с помощью dllразговоры с самим собой - опасный признак
удалить индикатор можно с помощью ChartIndicatorDelete, добавить - ChartIndicatorAdd.
но в 4-ке последняя функция отсутствует, поэтому добавление можно организовать с помощью dll
Если-бы это работало вам давно уже дали-бы совет.Отвечу сам себе) нашел. Но дополнительный пример не будет лишним.
Понял что индикатор это не объект) но оставлю тут.