Общие вопросы по разработке > Как суммировать показания за день?
Re: Как суммировать показания за день?
а вниз сумма 374 пункта, то есть меньше чем на самом деле
- Вложения
-
- 890.png (27.7 КБ) 22186 просмотров
Re: Как суммировать показания за день?
а следующий бар уже разница, но сумма все равно чёто не та
- Вложения
-
- 899.png (26.99 КБ) 22178 просмотров
- evge
- Администратор
- Сообщения: 1813
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 369 раз
- Контактная информация:
Re: Как суммировать показания за день?
ну теперь дело за малым доделать как вам надо
пример то есть

никогда такого не было и вот опять
Re: Как суммировать показания за день?
Он суммирует предыдущее значение КАЖДЫЙ новый бар, а должен суммировать только один раз.
То есть если рост идет 4 бара подряд, он просуммирует 4 раза предыдущее значение падения как на скрине.
Поэтому получаются такие большие цифры.
и суммирует он ОТДЕЛЬНО падение и рост, выдавая два суммарных значения.
Евгений , это решается?
То есть если рост идет 4 бара подряд, он просуммирует 4 раза предыдущее значение падения как на скрине.
Поэтому получаются такие большие цифры.
и суммирует он ОТДЕЛЬНО падение и рост, выдавая два суммарных значения.
Евгений , это решается?
- Вложения
-
- 2w.png (6.08 КБ) 22169 просмотров
-
- 3w.png (5.9 КБ) 22169 просмотров
- evge
- Администратор
- Сообщения: 1813
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 369 раз
- Контактная информация:
Re: Как суммировать показания за день?
Den писал(а):Евгений , это решается?
Возможно решается, но т.к. я не понимаю что делает MY.индикатор и вообще идею зачем всё это нужно, то и решения предложить не могу.
никогда такого не было и вот опять
Re: Как суммировать показания за день?
индикатор тут любой , выставляющий вершины.
Идея простая - узнать сумму за день.
я вот не пойму как его заставить суммировать предыдущее значение не каждый новый бар
Идея простая - узнать сумму за день.
я вот не пойму как его заставить суммировать предыдущее значение не каждый новый бар
Код: Выделить всё
function Initialize()
{
IndicatorName = "1";
AddInput("Input1", Inputs.Candle);
AddParameter("Period", 5, 0);
PriceStudy = true;
AddSeries("H", DrawAs.Custom, Color.Coral);
AddSeries("L", DrawAs.Custom, Color.LightGreen);
AddGlobalVariable("CountUp", Types.Int, 0);
AddGlobalVariable("CountDn", Types.Int, 0);
AddGlobalVariable("HH", Types.Double, 0.0);
AddGlobalVariable("LL", Types.Double, 100000000.0);
}
function Evaluate()
{
if (CurrentIndex > 2)
{
if ( Input1.Close[0] < Input1.Close[1] && Input1.Close[1] >= Input1.Close[2] )
{
if ( Input1.Close[1] > HH )
{
CountUp++;
HH = Input1.Close[1];
if ( CountUp >= 1 )
{
H[-1] = HH;
CountDn = 0;
LL = 1000000000.0;
}
}
}
if ( Input1.Close[0] > Input1.Close[1] && Input1.Close[1] <= Input1.Close[2] )
{
if ( Input1.Close[1] < LL )
{
CountDn++;
LL = Input1.Close[1];
if ( CountDn >= 1 )
{
L[-1] = LL;
CountUp = 0;
HH = 0.0;
}
}
}
H.DrawArrowDown(Color.Red, LineStyles.Solid, 5, Color.Red, 100);
L.DrawArrowUp(Color.Green, LineStyles.Solid, 5, Color.Green, 100);
}
}
Re: Как суммировать показания за день?
Евгений, в дополнение он и в таком виде выдает две разные суммы - сумму падения и сумму роста.
Код: Выделить всё
function Initialize()
{
IndicatorName = "A_DOWN_X";
AddInput("Input", Inputs.Candle);
AddShadowSeries("D", DrawAs.Custom, Color.Lime);
AddShadowSeries("U", DrawAs.Custom, Color.Violet);
AddShadowSeries("S", DrawAs.Custom, Color.Magenta);
AddGlobalVariable("Summa", Types.Double, 0);
PriceStudy = true;
AddParameter("P", 2, 1);
}
function Evaluate()
{
if (BarDate(1) != BarDate(0))
Summa = 0;
var lastLVal = MY.индикатор(Input).GetLastValues ("L", 1)[0];
var lastHVal = MY.индикатор(Input).GetLastValues ("H", 1)[0];
if (( (lastHVal.X > lastLVal.X ? lastHVal.Y : lastLVal.Y) == (MY.индикатор(Input).GetLastValues ("H", 1)[0].Y) ) || ( (lastHVal.X > lastLVal.X ? lastHVal.Y : lastLVal.Y) == (MY.индикатор(Input).GetLastValues ("L", 1)[0].Y) ))
{
D = (MY.индикатор(Input).GetLastValues ("H", 1)[0].Y) - (MY.индикатор(Input).GetLastValues ("L", 1)[0].Y);
Summa += D[0];
}
D.DrawHistogram(Input.Open, Color.Blue, Line.Solid, 1, Color.Blue, 3);
S = Summa;
}
- evge
- Администратор
- Сообщения: 1813
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 369 раз
- Контактная информация:
Re: Как суммировать показания за день?
Как суммировать за день (с 10-00 до 23-50) показания индикатора , который рассчитывает разницу между ПОСЛЕДНИМИ сигналами (High и Low) ?
Задача: просуммировать значения индикатора от начала до конца дня.
Решение: именно это оно и делает, на каждом баре дня имеется значение вашего индикатора, оно попадает в общую сумму. В следующий день сумма сбрасывается в 0. Если ваш индикатор считает не то что вы описали, то это проблема уже индикатора.
никогда такого не было и вот опять
Re: Как суммировать показания за день?
Какая же это проблема индикатора, если он показывает экстремумы не на каждом баре???
Требуется просуммировать разницу между экстремумами, которые ЕСТЕСТВЕННО будут не на каждом баре.
Где вы видели экстремумы на каждом баре ?
Это проблема прежде всего моя , или ваша, так как ни я ни вы не можем понять элементарную вещь - заставить индикатор
НЕ СУММИРОВАТЬ УЖЕ ПРОСУММИРОВАННОЕ.
А он упорно это делает каждый новый бар.
Хотя НОВОГО значения разницы экстремумов еще нет,А ОН ВСЕ РАВНО СУММИРУЕТ УЖЕ ПРОСУММИРОВАНОЕ
Вроде простая вещь
Такие дела, малята.
Требуется просуммировать разницу между экстремумами, которые ЕСТЕСТВЕННО будут не на каждом баре.
Где вы видели экстремумы на каждом баре ?
Это проблема прежде всего моя , или ваша, так как ни я ни вы не можем понять элементарную вещь - заставить индикатор
НЕ СУММИРОВАТЬ УЖЕ ПРОСУММИРОВАННОЕ.
А он упорно это делает каждый новый бар.
Хотя НОВОГО значения разницы экстремумов еще нет,А ОН ВСЕ РАВНО СУММИРУЕТ УЖЕ ПРОСУММИРОВАНОЕ
Вроде простая вещь
Такие дела, малята.

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

Кстати, решение нормальное! Все значения гистограммы просуммировались, как вы и просили.
Но конечно я понимаю желание просуммировать именно значения не этого индикатора, а того которого он вызывает, но задачи вы такой не ставили.
Тяжело решать задачу додумывая за вас, или пытаться прочитать ваши мысли, телепатия это хорошо, но пока не развил.
Правильная постановка задачи уже пол дела!
Повторю, как поставили задачу так и получили помощь

никогда такого не было и вот опять
Вернуться в «Общие вопросы по разработке»
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 192 гостя