Как разместить 6 буферов в одном под окне индиктора

 

Пишу мульти тайм фреймный индикатор. У меня получилось 6 буферов. Их все необходимо отразить вместе разом. Отсчет начинается у всех от 0. На текущем тайм фрейме маленькие значения. На тайм фрейме старше чуть выше значения, на еще большем тайм фрейме еще больше значение. И получается такая каша. Как их разместить, какие бывают способы? 


 

Вариант первый

Так как требуется именно визуализация одновременного отображения шести линий, то:

Индикатор размещается в подокне. Шесть раз добавить на график этот индикатор, но с разными входными параметрами. Добавлять или вручную или создать шаблон графика. Что-то вроде этого:


 

Вариант 2

Использовать Ваш первоначальный вариант, но только все шесть линий пронормировать или к 1 или к 100%. Возможно тогда линии не будут иметь сильный разброс.

 
Vladimir Karputov:

Вариант 2

Использовать Ваш первоначальный вариант, но только все шесть линий пронормировать или в 1 или к 100%. Возможно тогда линии не будут иметь сильный разброс.

Тоже склонясь ко 2 варианту.Готовлю индикатор для маркета так что 1 вариант точно не походит. По 2 варинта получается что то примерно вот так


но это на минутном тайм фрейме. Нижнии 2 линии отвечают за минутки, среднии 2 линии отвечают за 5 минутки, 3 вехнии соотвественно за 5 минутки. Но это тоже не особо красиво. Хотелось конечно разделить окно на 3 части у каждой части свой масштаб))) ну понимаю что этого не сделать.

 
Evgeny Raspaev:
можно запустить 6 разных индикаторов в одном подокне. у них всех будет разная шкала
 
TheXpert:
можно запустить 6 разных индикаторов в одном подокне. у них всех будет разная шкала

хотелось бы что работало без лишних движений, не для себя все таки пишу. 

 
Evgeny Raspaev:

хотелось бы что работало без лишних движений, не для себя все таки пишу. 

если не для себя то может спросить у того для кого? а не всякую дичь выдумывать?

 
TheXpert:

если не для себя то может спросить у того для кого? а не всякую дичь выдумывать?

Для маркета готовлю, не у кого спрашивать. Что бы индикатор был информативным, необходимо вывести 6 буферов, за каждый тайм фрейм. Дичь не надо придумывать, просто решил спросить есть ли стандарное решение,а то может я что то упустил. 

 
Evgeny Raspaev:

Для маркета готовлю, не у кого спрашивать.

Дичь не надо придумывать, просто решил спросить есть ли стандарное решение,а то может я что то упустил. 

пронормировать относительно максимума\минимума за какой-то промежуток времени.

если ТФ постоянны, иногда даже просто статические коэффициенты спасают

 
TheXpert:

пронормировать относительно максимума\минимума за какой-то промежуток времени.

если ТФ постоянны, иногда даже просто статические коэффициенты спасают

ТФ не статические, можно на любой тф кинуть и он отобразить его и еще 2 старших тайм фрейма. (ну кроме дневного). Статические коэффициенты не подойдут, но динамические к чем можно привязать? Только по условию? если тф такой то коэффициент такой то? 

 
Evgeny Raspaev:

ТФ не статические, можно на любой тф кинуть и он отобразить его и еще 2 старших тайм фрейма. (ну кроме дневного). Статические коэффициенты не подойдут, но динамические к чем можно привязать? Только по условию? если тф такой то коэффициент такой то? 

Без костылей вряд ли что-то получится. Как вариант:

1. Делаете фиксированный размер окна (например, 1000 пунктов).

2. На истории (при первом прогоне, когда prev_calculate == 0) делаете предварительный прогон. Получаете максимальное значение индиктора на каждом таймфрейме.

3. Делите или умножаете значение индикатора на коэффициент. Например, максимум индикатора 9 000, при этом высота окна, если делать только этот таймфрейм - 10 000 (получается только опытным путем). Значит, максимальный размер значения в окне - 9000 / 10000 * 1000 = 900 пунктов. Или наоборот, младший таймфрейм - значение индикатора 90, окно при этом 100. Значит, значение индикатора 90 / 100 * 1000 = 900 - тот же размер. В этом случае лучше разные таймфреймы выводить разным цветом.

Минусы:

- Возможны экстремальные значения индикатора, которые делают все остальные значения маленькими и нечитаемыми. Выход - обрезать эти значения при расчете. Пусть выходят за границы окна.

- При прокрутке графика индикатор не будет масштабироваться. Чтобы он масштабировался, нужно делать расчет по п. 2-3 для видимых баров. Если это возможно, то почему бы и нет.

- Пользователь не узнает реальные данные индикатора, только пересчитанные.

- Ситуация может измениться и старые коэффициенты уже не будут работать, индикатор уедет выше окна.