|
|
uufuk hocam ellerinize sağlık.çok teşekkür ederim.
Merhabalar, üst framelerden veri çekerken örneğin 10 dakikalık grafikte 1 saatlik barladaki son saatteki yüksek ya da düşük fiyatı çekerken gelen bilgi yanlış geliyor. Bu hangi sebepten kaynaklanabilir acaba? Kapanış datasında her hangi bir sorun olmamakla beraber hali hazırda yüksek ve düşük gibi datalarda oluşan sıkıntı sebebiyle indikatör farklı sürelerde yanlış veri veriyor.
Ufuk bey örneğin 5 dakikalık barda çalışıyorum ve 15 dakikalık hacimleri çağırmak ve onun üzerine ortalamayla senaryoyu kurgulamak istiyorum.
N15mun:=MINUTE()/15=int(MINUTE()/15) or HOUR()<>ref(HOUR(),-1);
valuewhen(1,N15mun,ref(v,-1)) 15 dakikadan bir önceki 5 dakikalık barın hacmini alıyorum haliyle. Örneğin 15 dakikalık hacmi almak istiyorum ama buna nasıl ulaşacağımı çözemedim. C, h ve l ortalamalarını alacakken highestsince vs. fonksiyonlarla bunu bertaraf edebiliyorduk. Ama burada bunu gerçekten çözümleyemedim. N5mun:=MINUTE()/5=int(MINUTE()/5) or HOUR()<>ref(HOUR(),-1);
valuewhen(1,N5mun,ref(v,-1))+valuewhen(1,N5mun,ref(v,-2))+valuewhen(1,N5mun,ref(v,-3)) gibi 5 dakika üzerinden anca 15 dakikalıktaki barlardaki hacmi doğru denk getirebiliyorum. 2. 5 dakikada hacim değişmiş oluyor. Yapmak istediğim 15 dakikalık grafikte görünen 15 dakikalık hacmi 5 dakikalıkta çağırabilmek ve 15 dakika içindeki 3 5 dakikada o hacmin sabit kalması. Yardımcı olabilirseniz çok memnun olurum. Saygılarımla
Birde ekstradan birşey daha sormak isterim Ufuk bey. Burada multiframe çalışmıyorum. 5 dakikalık barda sabah açılıştan itibaren ortalama hacmi almak istiyorum. Nday:=DAYOFMONTH()<>ref(DAYOFMONTH(),-1) ;
a:=valuewhen(1,Nday,cum(1));
b:=cum(1);
mov(v,b-a,s) ile o bar dahil sabahtan beri olan hacim ortalamasını almak istiyorum ama gene doğru sonuca ulaşamıyorum. Burada ortalama isterken ilk bar dışında Nday değişkenini sağlayamadığımdan dolayı mı doğruya ulaşamıyorum. B-a ile sabahki açılış barıyla aradaki bar sayısını ölçüp ortalamayı alabilirim diye düşündüm ama maalesef olamıyor. Saygılarımla
|
|
Hocam bu şekilde sorunu aşabiliyorum ama haliyle oldukça uzun oluyor.
N5mun:=MINUTE()/5=int(MINUTE()/5) or HOUR()<>ref(HOUR(),-1);
N15mun:=MINUTE()/15=int(MINUTE()/15) or HOUR()<>ref(HOUR(),-1);
if(MINUTE()=15 ,valuewhen(1,N5mun,ref(v,-1))+valuewhen(1,N5mun,ref(v,-2))+valuewhen(1,N5mun,ref(v,-3)),0);
if(MINUTE()=20,valuewhen(1,N15mun,ref(v,-1))+valuewhen(1,N15mun,ref(v,-2))+valuewhen(1,N15mun,ref(v,-3)),0);
if(MINUTE()=25,valuewhen(1,N15mun,ref(v,-1))+valuewhen(1,N15mun,ref(v,-2))+valuewhen(1,N15mun,ref(v,-3)),0);
if(MINUTE()=30 ,valuewhen(1,N5mun,ref(v,-1))+valuewhen(1,N5mun,ref(v,-2))+valuewhen(1,N5mun,ref(v,-3)),0);
if(MINUTE()=35,valuewhen(1,N15mun,ref(v,-1))+valuewhen(1,N15mun,ref(v,-2))+valuewhen(1,N15mun,ref(v,-3)),0);
if(MINUTE()=40,valuewhen(1,N15mun,ref(v,-1))+valuewhen(1,N15mun,ref(v,-2))+valuewhen(1,N15mun,ref(v,-3)),0);
if(MINUTE()=50,valuewhen(1,N15mun,ref(v,-1))+valuewhen(1,N15mun,ref(v,-2))+valuewhen(1,N15mun,ref(v,-3)),0);
if(MINUTE()=55,valuewhen(1,N15mun,ref(v,-1))+valuewhen(1,N15mun,ref(v,-2))+valuewhen(1,N15mun,ref(v,-3)),0);
if(MINUTE()=0 ,valuewhen(1,N5mun,ref(v,-1))+valuewhen(1,N5mun,ref(v,-2))+valuewhen(1,N5mun,ref(v,-3)),0);
if(MINUTE()=5,valuewhen(1,N15mun,ref(v,-1))+valuewhen(1,N15mun,ref(v,-2))+valuewhen(1,N15mun,ref(v,-3)),0);
if(MINUTE()=10,valuewhen(1,N15mun,ref(v,-1))+valuewhen(1,N15mun,ref(v,-2))+valuewhen(1,N15mun,ref(v,-3)),0)
ile dediğim kıvama getirebiliyorum. Ama bunların bana aynı gün içindeki 15 dakikalık barlardaki hacmin ortalaması şeklinde tek çıktı almak istiyorum ama maalesef sonuca ulaşamıyorum.
Son düzenleme : dupont; 02-02-2019 saat: 18:05. Sebep: anlaşılır olması
Yer İmleri