Вычисление площади сложной фигуры - страница 4

 
Cronex:

Ну не совсем ...Хотя возможно... :-) А кстати кто нибудь пробовал представить скользящую среднюю в ее геометрическом смысле? Как пример - производная в точке графика в геометрическом смысле является касательной к графику проходящей через данную точку (утрированно).

Давно как-то баловался, больше с целью освоения MQL. В итоге получил гистограмму угла наклона касательной к МАшке которая по форме оказалась один в один MACD 1/Х, где Х - период исследуемой МА.

 
Наклон случайной последовательности это и есть искомая производная.
 
Korey:

Ну да, от клоуза до клоуза прямая линия, = кусочно-линейная.
Имеются десятки вариантов развитых численных методов интегрирования с нелинейной интерполяцией.
Однако на моей практике (автоматизация научных исследований) всякий раз оказывалось,
что в случае когда имеется достаточное кол-во отсчетов интегрируемого процессса,
- простое суммирование прямоугольников с линейно-кусочной интерполяцией и с увеличением числа проямоугольников
дает точность ничуть не хуже полиномиальной интерполяции всяких видов, а иногда даже лучше. Считает намного быстрее.

Причина в том том что интерполирующий полиномом не всегда ложится точно и может дать даже ухудшенный результат по сравнению с линейной интерполяцией.
(справедливо при условии достаточно частых отсчетов)

если прямая линия от клоуза к следующему клоузу, то это не прямоугольник, а расчет интеграла методом трапеций

 

вот так можно посчитать площадь поверхности MACD которые находятся на разных сторонах от нулевой линии

//+------------------------------------------------------------------+
//| script program start function                                    |
//+------------------------------------------------------------------+
int start()
  {
   double S;
  
for (int i=2000;i>=0;i--)
      {
         double macdprev=iMACD(NULL,0,5,34,5,PRICE_MEDIAN,MODE_MAIN,i+1);
        
double macd=iMACD(NULL,0,5,34,5,PRICE_MEDIAN,MODE_MAIN,i);
        
if (macd >0 && macdprev>0){S+=((macdprev+macd)/2);}
         if (macd <0 && macdprev<0){S+=((macdprev+macd)/2);}
         if ((macd >=0 && macdprev<=0)||(macd <=0 && macdprev>=0)){Print(S);S=0;}
      }
   return(0);
  
}
//+------------------------------------------------------------------+

это с учетом того что расстояние по оси времени брать 1

 
olyakish:

вот так можно посчитать площадь поверхности MACD которые находятся на разных сторонах от нулевой линии

Не поверите, у меня практически один в один получилось :-)

Т.е. фактически, сумма длин всех элементов гистограммы с одной стороны является приведенной относительной площадью фигуры, есс-но с нормированной относительной ошибкой вычисления. Но этого оказалось достаточно для оценки отношений площадей фигур сверху и снизу базовой линии.

 
Cronex:
olyakish:

вот так можно посчитать площадь поверхности MACD которые находятся на разных сторонах от нулевой линии

Не поверите, у меня практически один в один получилось :-)

Т.е. фактически, сумма длин всех элементов гистограммы с одной стороны является приведенной относительной площадью фигуры, есс-но с нормированной относительной ошибкой вычисления. Но этого оказалось достаточно для оценки отношений площадей фигур сверху и снизу базовой линии.

Отлично, но как это дальше применять ?

Ну, если не большой секрет...

 
Встречалась как-то идея считать площадь RSI. И при превышении определенного положительного значения становиться в продажу (зона перекупленности), соответственно, при превышении площади отрицательных значений - становиться в покупку (перепроданность). Работает неплохо, только сбоит на мощных продолжительных трендах. Порог площади можно подбирать по ближайщей истории. Интересно найти какой-нибудь критерий для автоматической адаптации этого порога.
 
Prival:
Korey:

Ну да, от клоуза до клоуза прямая линия, = кусочно-линейная.
Имеются десятки вариантов развитых численных методов интегрирования с нелинейной интерполяцией.
Однако на моей практике (автоматизация научных исследований) всякий раз оказывалось,
что в случае когда имеется достаточное кол-во отсчетов интегрируемого процессса,
- простое суммирование прямоугольников с линейно-кусочной интерполяцией и с увеличением числа проямоугольников
дает точность ничуть не хуже полиномиальной интерполяции всяких видов, а иногда даже лучше. Считает намного быстрее.

Причина в том том что интерполирующий полиномом не всегда ложится точно и может дать даже ухудшенный результат по сравнению с линейной интерполяцией.
(справедливо при условии достаточно частых отсчетов)

если прямая линия от клоуза к следующему клоузу, то это не прямоугольник, а расчет интеграла методом трапеций

Согласен, как я написал, это все равно что называть ствол АК, типа - "трубка высокого давления с винтовыми полигональными нарезами",
Но с другой стороны - зачем же математикой убивать мышление программиста.
Мне намного ближе "программист-изобретатель", чем "программист-математик".

 
olyakish:Отлично, но как это дальше применять ?

Ну, если не большой секрет...

Идея очень близкая к высказанной выше kostas, но больший упор делается на работу в противотренде на флэте с применением сильно(точнее кардинально) модифицированных индикаторов CCI, RSI, DemMarker и Taichi.

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

Идея про адаптивный порог срабатывания уже в разработке.

Дополнительно идет доработка нескольких индикаторов комплекса на предмет программного определения уже выявленных патернов на основе поверхностей - спасибо Integer, за его пример кода в каком-то индикаторе по поиску локальных экстремумов на графике между макс/мин графика...

В общем окончательно стратегия еще не оформилась, возможно ничего и не получится.

Правда уже сейчас без изменения и оптимизации параметров, на чистой идее поведения за период 01/01/2007 по текущий момент EUR дает ~90% профитных сделок на четырех периодах и профитность ~2,14 на постоянном лоте. Периоды тестировались как отдельно так и совместно - результат единый .

На других парах пока не тестировал, но есть подозрение что пары близкие по коррелляции к 0,7 и -0,7 должны дать аналогичный результат.

Если что то получится тисну статейку если кому-то будет интересно.

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