Горизонтальные объемы, последняя версия

Горизонтальные объемы, последняя версия
Settings={
Name="GVOL",
period=200,
maxline=20,
width=4,
count=50,
xshift=0,
vlm=1,
line={} 
}
--[[

описание свойств:

xshift - сдвиг по горизонтали
count - количество черточек по вертикали
period- сколько баров берутся в подсчет
maxline - количество баров для максимальной черточки
width - толщина черточки
vlm - 1-c учетом оъема 0-просто распределение без объема,

--]]

function Init()

    n=Settings.count  
	
    vol={}
    for j = 1, n do        
      vol[j]=0
      Settings.line[j] = {Color=RGB(192,192,192),Type=TYPE_LINE,Width=Settings.width}
      --for i=Size()-Settings.xshift-Settings.maxline, Size()-Settings.xshift do 	
	  for i=1, Size() do 	
	   SetValue(i, j, nil)
	  end 
    end  
    
  return Settings.count  
end

function OnCalculate(index)
    

 
  if (index < Size()-Settings.xshift)or(index > Size()-Settings.xshift) then
    return nil
  else  	   
  
    n=Settings.count  
	
    maxv=0
    maxc=0
    minc=9999 
         
    for i=Size()-Settings.xshift-Settings.period, Size()-Settings.xshift do  
       
      if C(i) ~= nil then         
        if maxc < C(i) then 
          maxc = C(i)      
        end        
        if minc > C(i) then 
          minc = C(i)      
        end
      end
            
    end   
     
    delta = (maxc - minc)/n
     
    for i=Size()-Settings.xshift-Settings.period, Size()-Settings.xshift do  
 
      for j = 1, n do 
       if C(i) ~= nil then      
        if (C(i) > minc + (j-1)*delta) and (C(i) <= minc + j*delta) then 
		  if Settings.vlm == 1 then
		    if V(i) ~= nil then
              vol[j]=vol[j]+V(i) 
            end 			
          else 		  
		    vol[j]=vol[j]+1
		  end
        end  
       end    
      end
            
    end   

    for j = 1, n do
	  vol[j] = math.floor(vol[j]+0.5)
      if maxv < vol[j] then 
        maxv = vol[j]
      end                
    end    
      

    k = 0 
    for i=Size()-Settings.xshift-Settings.maxline+1, Size()-Settings.xshift do  
      k = k + 1
      for j = 1, n do
        if vol[j] >= (Settings.maxline - k)*maxv/Settings.maxline then 
          SetValue(i, j, minc + j*delta)		  
        else  		
          SetValue(i, j, nil)
        end      
      end
    end
	  
     
  end


end


  • обсудить на форуме:
  • Quik Lua

какого цвет шарики? оптическая иллюзия

кажется что они разного цвета,
какого цвет шарики? оптическая иллюзия


но все шарики одного цвета
так нас дурят повсюду

Горизонтальные объемы

ввел новые свойства в индикатор:
xshift — сдвиг по горизонтали
count — количество черточек по вертикали
period- сколько баров берутся в подсчет
maxline — количество баров для максимальной черточки
width — толщина черточки


т.о. можно на одном графике выставить несколько вертикальных объемов с разными смещениями:

Горизонтальные объемы


Горизонтальные объемы


( Читать дальше )

Индикатор "Горизонтальные объемы"

пока первая версия, в ближайшие дни доработаю
Индикатор "Горизонтальные объемы"

регулируется параметрами:
Индикатор "Горизонтальные объемы"

( Читать дальше )
  • обсудить на форуме:
  • Quik Lua

Три основных правила успешного инвестора

Три основных правила успешного инвестора


1. Нужно разделять первичные и вторичные деньги. Первичные — это те, которые работают как инвестиции, вторичные — это то что получается в результате инвестиций. Первичные деньги не нужно тратить на собственные нужды, а вторичные как раз для этого предназначены.
2. Первичные деньги должны всегда увеличиваться в своем объеме (пополнение за счет накоплений ...). Желательно, чтоб рост был нелинейным.
3. Первичные деньги должны быть мобильны, то есть вложены в ликвидные активы. Т.к. происходит все время смена лидеров по заработку среди различных инвестиционных инструментов, то придется периодически перекладывать капитал из одного места в другое более доходное. А из неликвида тяжело выходить.

теги блога autotrade

....все тэги



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