Alıntı Originally Posted by Orhan AKDOĞAN Yazıyı Oku
"Orhan %R" İndikatörü: Kapanış Fiyatlarının, Parametre olarak verilen periyottaki En Düşük veya En Yüksek fiyatlara Yüzdesel uzaklığını döndürür.Periyot ve Ortalama Alınacak Bar Sayısı şeklinde iki parametre alır.

L.Williams tarafından geliştirilen "Williams %R" ve George Lane tarafından geliştirilen "Stochastic" indikatörlerinin birleştirilmesi ve her yönde daha doğru ve simetrik şekilde ölçeklendirilmesi ile meydana gelmiştir.

Williams %R Nasıl Hesaplanıyor: https://www.investopedia.com/terms/w/williamsr.asp
Stochastic Oscillator Nasıl Hesaplanıyor: https://www.investopedia.com/terms/s...oscillator.asp

Orhan%R, Williams%R, StochasticOsc ve StochasticFast indikatörleri aynı işi yaparlar, grafik çıktılar nerdeyse aynıdır fakat ölçekleme şekilleri ile biribirinden ayrılırlar.
Orhan %R değeri sıfırın üzerindeki değerleri StochasticOsc ile birebir aynıdır.
Orhan %R değeri sıfırın altındaki değerleri Williams%R ile birebir aynıdır.

Aşağıdaki Resimde özellik kıyaslamaları görünmektedir.
Orhan %R İndikatörü diğerlerinden daha hassas ve simetrik değer aralığına sahip ve salınımları yumuşatmak için parametre almaktadır.




https://prnt.sc/llgei3

"Orhan %R" iDeal Sistem Kodu
PHP Code:
Sistem.Cizgiler[0].Deger  Lib.OrhanR(Sistem,14,5);      //Panel 2
Sistem.Cizgiler[1].Deger  Sistem.WilliamsR(14);         //Panel 3
Sistem.Cizgiler[2].Deger  Sistem.StochasticOsc(145);  //Panel 4     
Sistem.Cizgiler[3].Deger  Sistem.StochasticFast(141); //Panel 5  (ikinci parametre işlevsizdir.) 

"Orhan %R" iDeal Lib.cs Kodu
PHP Code:
using System;
using System.IO;
using System.Collections.Generic;
using System.Data;
using System.Net;
using System.Text;
using System.Text.RegularExpressions;
using System.Data.OleDb;
using System.Data.SqlClient;
using System.Drawing;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Collections.Specialized;
using System.Runtime.InteropServices;
using System.ComponentModel;
using System.Linq;

namespace 
ideal
{
    public class 
Lib
    
{

        public List<
floatOrhanR(dynamic Sistemint pRangeCountint MAPeriod)
        {
            List<
floatSistem.GrafikFiyatSec("Kapanis");
            List<
floatSistem.GrafikFiyatSec("Yuksek");
            List<
floatSistem.GrafikFiyatSec("Dusuk");
            var 
orhanR Sistem.Liste(0);
            for (
int i pRangeCountC.Counti++)
            {
                
float HMAXH.GetRange(pRangeCount 1pRangeCount).Max();
                
float LMINL.GetRange(pRangeCount 1pRangeCount).Min();
                
float HMAXCHMAX C[i];
                
float HMINCC[i] - LMIN;
                
orhanR[i] = (HMINC>HMAXC HMINC/(HMINC+HMAXC)*100 HMAXC/(HMINC+HMAXC)*100*-);
            }   
           return 
MAPeriod<=orhanR Sistem.MA(orhanR,"Simple",MAPeriod);
        }

    }




https://prnt.sc/llgez2
konu cok yararli olacaga benziyor. eline saglik hocam.