Как посчитать касательную к кривой? - страница 2

 
TheXpert:

Проще считать "производную" усредненно. Но это не проблема на самом деле.

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

Проблема два -- множество вариантов касательных на выходе и выбор из них оптимально нужной\требуемой. Это посложнее.

Фигня всё.  Провести линии от каждой точки на кривой к начальной точке.  Которая выше всех (с максимальным тангенсом), той и тапки. 

Фактически алгоритм топикстартера почти правильный, чуток подправить/подлатать/ускорить - будет рабочий.

 
MetaDriver:

Фактически алгоритм топикстартера почти правильный, чуток подправить/подлатать/ускорить - будет рабочий.

согласен с почти, подводные камни на то и существуют, чтобы проявиться - не сразу - там еще добавить килобайт 15-20 нужно для доводки

 
A100:

согласен с почти, подводные камни на то и существуют, чтобы проявиться - не сразу - там еще добавить килобайт 15-20 нужно для доводки

Давай уже пару камней в студию,  чего за пазухой-то держать?
 
MetaDriver:
Давай уже пару камней в студию,  чего за пазухой-то держать?
Не, он только нехотя наличие обозначает.
 
Коммерческой ценности для меня эта функция не имеет, so камни покупать не буду. Но, конечно, любопытно что за камни + перфекционизм давит. В алгоритме ошибок пока не встретил, разве тока с буферами (знаками) может быть путаница - они под конкретный код подстроены
 
f2011:

Коммерческой ценности для меня эта функция не имеет, so камни покупать не буду.

Ну и правильно.  Зато сам знаешь как что работает.  Если грабли вылезут потом - сам и поправишь.
 

Через два соседних бара провести линию, да и всё, будет касательная для точки между баров. Или через один бар и сдвинуть до уровня центрального бара. 

 

 

подводный камень будет при "впуклой" кривой. линия на последнем баре окажется и пробьет ее. 

 
а нужно именно нарисовать или расчитать значение касательной в определенной точке?
 
lazarev-d-m:
а нужно именно нарисовать или расчитать значение касательной в определенной точке?

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

есть значение кривой в этой точке, следующей и предыдущей от нее, A[0],A[1],A[-1], у касательной есть угл наклона, но т.к. у нас временной ряд, то его будет сложновато посчитать, хотя кому как, можно расчитать изменение значения касательной за 1 бар таким образом d=(A[1]-A[-1])/2 - это значение на которое будет меняться касательная с каждым баром, отсуюда, чтобы узнать значение касательной в текущем баре, при точке касания 10 баров назад(к примеру), то A=A[0] + 10*d, где A[0] - это значение цены в точке касания

может быть будет полезно... 

Причина обращения: