Блог им. autotrade

Индикатор кривой наклонной

можно задавать свои параболы гиперболы… рынок по ним работает т.к. скорости изменения рынка большие в связи все с большей автоматизацией  на нем
в данном случае используется формула ax^2+bx+с, и тут гипербола 0,0005x^3+0x+275 на периоде от 19.07.2021-15.10.2021
для гиперболы было бы правильно задать ax^3+bx^2+cx+d, но это уже сами можете подправить
Индикатор кривой наклонной

--[[
вопросы к автору: https://smart-lab.ru/profile/autotrade/
Индикатор: Кривая/прямая
параметры:
Procent - процент зигзага
--]]
Settings={
Name="CURV_Templ",
day=1,
month=1,
year=2022,

day2=1,
month2=12,
year2=2022,

a=0.0,
b=0.0,
c=0.0,
mult=2.0,
    line=                                     
                {  
                    {  
                        Name = "cur1",
                        Type =TYPE_LINE,
                        Width = 2,
                        Color = RGB(0,0, 0)
                    }                
                }
}

function Init()

  clc = {};
  vl = {};
 
  return 1
 
end

function OnCalculate(index)

  v = nil
 
  d = Settings.day
  m = Settings.month
  y = Settings.year  

  d2 = Settings.day2
  m2 = Settings.month2
  y2 = Settings.year2  

  a = Settings.a
  b = Settings.b
  c = Settings.c
  mt = Settings.mult
 
  vl[index]=nil
  if T(index).day >= d and T(index).month >= m and T(index).year >= y then
    clc[index]=1
  else
    clc[index]=0
  end
  if index-1 > 0 then
    if clc[index-1]~=nil then
      if clc[index-1]~=0 then
        clc[index] =  clc[index-1]+1
      end
    end
  end

  if T(index).day >= d2 and T(index).month >= m2 and T(index).year >= y2 then
    clc[index]=0
  end
 
  if clc[index] ~= 0 then   
    if index-1 > 0 then
      if vl[index-1] == nil then
        vl[index-1] = C(index-1)
      end
      if vl[index-1] ~= nil then   
        vl[index] = a*clc[index]^mt+b*clc[index]+c
      end
    end
    
  end     


 
  return vl[index]
 
 
end

t.me/autotradering
★9
19 комментариев
как вам можно задать пару вопросов в лс?
avatar
Владимир Захаров, в личку написать
avatar

autotrade, да если бы на этом сайте так просто было… пока какой то рейтинг не наберешь не льзя 

 

avatar
Владимир Захаров, в телеграм можно написать t.me/autotradering
avatar
Так можно же параметры подогнать под любые условия
avatar
Paulmarko, задача состоит в том чтоб описать какую либо тенденцию и в момент слома ее выскочить из рынка
avatar
autotrade, выскочили из газпрома?))
avatar
Gsimplov777, нет
avatar
Математика в графиках цен это отображение прошлого. 
avatar
Михаил Шварц, здесь нелинейная тенденция если берешь период 10 то прогнозный период будет 3, это стандарт для статистики
avatar
Михаил Шварц, 21:22 на рассуждения «по индукции» из прошлого опыта можно полагаться, когда известны действующие силы и условия их применения. Так в физике действует закон всемирного тяготения Ньютона. Так в экономике действует закон конкуренции -  Фридрих Лист «Национальная система политической экономии».
«Индуктировать» из «чёрного ящика» — значит  просто шаманить.
avatar
Забавный кусок кода:
 

if vl[index-1] == nil then
    vl[index-1] = C(index-1)
end
if vl[index-1] ~= nil then
    vl[index] = a*clc[index]^mt+b*clc[index]+c
end


В языке нет конструкции if-else, или автор просто не знает про нее?
avatar
Union_Jack, это не одно и тоже в первом блоке идет присвоение и второй отрабатывает
если else поставищь то работать не будет
avatar
autotrade, ок, не буду придераться к чужому коду. Я тоже могу ошибаться)
avatar
Проще числено продифференцировать методом элера, дифференцируемую числовую функцию начать с выбранного минимума цены.  будет практически тоже самое., выход пересечение кривой. 
avatar
Jkrsss, проаксимировать
avatar
autotrade, ну тогда возьмите весь спектр функций по которым аппроксимируете(по моему это линеаризацией называется), использую только те которые наиболее коррелируют с потоком данных(ценой). К примеру в место степенного ряда, можно взять тригонометрический ряд f(x)=a0+a1cosx+a2cos2x+a3cos3x+b1sinx+b2sin2x+b3sin3x.(гармонический анализ).Вся фишка с ковариацией/корреляцией где то данная аппроксимация работать будет, а где то нет.
avatar
Jkrsss, тригонометрия это преобразование фурье из разряда апроксимации
можно и так только сложный индикатор будет придется матрицы считать
avatar
autotrade, ну да в питончике проще посчитать. Можно усреднить цену. Все зависит от амплитуды, и частоты дискретизации. 
Если получиться скидывай посмотрим вместе.
avatar

теги блога autotrade

....все тэги



UPDONW
Новый дизайн