Общие вопросы по разработке > Ошибка при сравнении Bool и Double
Re: Ошибка при сравнении Bool и Double
Да, и самое главное - чтобы отсчет был от ПОСЛЕДНЕГО High / Low , удовлетворившего условию.
То есть тут он отсчет ведет от Math.Max Math.Min , а нужно от последнего , которое удовлетворило условию размера U или D.
Например , если 0.14 <= U <=0.15 , то это последний и от него отсчет
То есть тут он отсчет ведет от Math.Max Math.Min , а нужно от последнего , которое удовлетворило условию размера U или D.
Например , если 0.14 <= U <=0.15 , то это последний и от него отсчет
Re: Ошибка при сравнении Bool и Double
Вот как тут - он показывает 16 , а условие еще не выполнено , то есть он должен показывать 27
- Вложения
-
- 17i.png (16.36 КБ) 21332 просмотра
- evge
- Администратор
- Сообщения: 1813
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 369 раз
- Контактная информация:
Re: Ошибка при сравнении Bool и Double
Что-то простая ошибка сравнения Boolean и Double выливается в написать индикатор 

никогда такого не было и вот опять
- evge
- Администратор
- Сообщения: 1813
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 369 раз
- Контактная информация:
Re: Ошибка при сравнении Bool и Double
Зафиксировать стрелочку нельзя. Т.е. все значения индикатора в прошлом рассчитываются по сформированным барам, это уже много раз обсуждалось 
Пока бар рисуется и 10 раз формируется сигнал и исчезает на активном баре, то это не означает что в конечном счете так оно и будет при закрытии этого бара.
В истории есть только данные конечные по бару и нет никаких промежуточных значений в выбранном ТФ.

Пока бар рисуется и 10 раз формируется сигнал и исчезает на активном баре, то это не означает что в конечном счете так оно и будет при закрытии этого бара.
В истории есть только данные конечные по бару и нет никаких промежуточных значений в выбранном ТФ.
никогда такого не было и вот опять
Re: Ошибка при сравнении Bool и Double
нет , индикатор дописывать не нужно
По поводу скобок я уже написал, что они не изменили показания (хотя так, безусловно верно)
Я просто хочу поставить условие , чтобы как на рисунке - пока условие не выполнилось, расчет ведется относительно последнего, удовлетворившего условию (скажем , 0.14 <= U <= 0.15 )
Как это можно в коде прописать ?

Я просто хочу поставить условие , чтобы как на рисунке - пока условие не выполнилось, расчет ведется относительно последнего, удовлетворившего условию (скажем , 0.14 <= U <= 0.15 )
Как это можно в коде прописать ?
- evge
- Администратор
- Сообщения: 1813
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 369 раз
- Контактная информация:
Re: Ошибка при сравнении Bool и Double
Den писал(а):Вот как тут - он показывает 16 , а условие еще не выполнено , то есть он должен показывать 27
Очень просто, потому-что условие у вас не для D,U стоят, а для H и L серий.
D, U задаются по другим условиям, их и показывает.
никогда такого не было и вот опять
- evge
- Администратор
- Сообщения: 1813
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 369 раз
- Контактная информация:
Re: Ошибка при сравнении Bool и Double
Стрелочки только у вас по условиям вхождения в интервал проставляются.
никогда такого не было и вот опять
Re: Ошибка при сравнении Bool и Double
Очень просто, потому-что условие у вас не для D,U стоят, а для H и L серий.
D, U задаются по другим условиям, их и показывает.
Евгений, так как изменить код я чет не пойму
Если U ,допустим, удовлетворило условию, то L[0] = Input.High[0]
- evge
- Администратор
- Сообщения: 1813
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 369 раз
- Контактная информация:
Re: Ошибка при сравнении Bool и Double
Код: Выделить всё
function Initialize()
{
IndicatorName = "BRENT";
AddInput("Input", Inputs.Candle);
AddShadowSeries("D", DrawAs.Histogram, Color.Violet);
AddShadowSeries("U", DrawAs.Histogram, Color.Lime);
AddSeries("H", DrawAs.Custom, Color.Black);
AddSeries("L", DrawAs.Custom, Color.Black);
PriceStudy = true;
}
function Evaluate()
{
var DD = (Math.Max(Input.High[0],Input.High[1]) - Input.Low[0]);
var UU = (Input.High[0] - (Math.Min(Input.Low[0],Input.Low[1])));
if (Input.High[0] < Input.High[1])
if ((DD >= 0.14 && DD <= 0.15) || (DD >= 0.19 && DD <= 0.20))
{
D = DD;
L[0] = Input.High[0];
L.DrawArrowDown(Color.HotPink, LineStyles.Solid, 3, Color.HotPink, 10);
}
if (Input.Low[0] > Input.Low[1])
if ((UU >= 0.14 && UU <= 0.15) || (UU >= 0.19 && UU <= 0.20))
{
U = UU;
H[0] = Input.Low[0];
H.DrawArrowUp(Color.Cyan, LineStyles.Solid, 3, Color.Cyan, 10);
}
}
никогда такого не было и вот опять
Вернуться в «Общие вопросы по разработке»
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 192 гостя