12 Şubat 2015 Perşembe

Matriks Veri Terminali Programımızda İndikatör oluştururken kullanılan muhtelif fonksiyonlar vardır.
If fonksiyonunun açıklanması ve örnek uygulamalar:
if(koşul,Then DA,Else DA)
Bu fonksiyon şunu yapar : Koşul kısmına yazdığınız koşulunuz geçerli / doğru ise Then DA kısmına yazdığınız veriyi - işlevi alır / gerçekleştirir. Koşul yanlış ise Else DA kısmına yazdığınız veriyi – işlevi alır / gerçekleştirir.
Örnek olarak:
if(C>REF(C,-1),1,0) ifadesi şunu anlatır: Kapanış bir önceki barın kapanışından büyük ise 1 sonucunu ver, değilse 0 (Sıfır) sonucunu ver. Grafikte şöyle görünür
Bu kullanım şekli, muhtelif biçimlerde işe yarar. Mesela birden fazla koşulun her biri için doğru ise 1 ve yanlış ise 0 değeri döndürülür. Bu koşullardan bir kısmının doğruluğunu yeterli gördüğünüz durumları bu şekilde belirleyebilirsiniz.
Bir başka örnek:
if(MOV(C,25,E)>C,CCI(5)<0,RSI(C,14)<40)
Burada yapılan şudur. Bir koşul - MOV(C,25,e)>C - doğru ise bakılacak koşul : CCI(5)<0 koşuludur. Bu koşulun doğruluğu durumunda koşul gerçekleşmiş sayılır.
Eğer esas koşul  - MOV(C,25,e)>C – doğru değil ise bakılacak koşul değişir. Bu örnekte RSI(C,14)<40 koşuludur. Buna göre sonuç verilir (Alınır).
Dikkat: Yukarıdaki sadece bir örnektir. Bu tip uygulamalar birden fazla koşulu özel olarak birleştirmek için kullanılır.
Birden fazla if iç içe kullanılabilir. Bunun için örnek formül:
if (C/MOV(C,9,E)>1.01,1,if(C/MOV(C,9,E)<0.99,-1,0))
Bu formül ile elde edeceğiniz sonuç şudur:
C/MOV(C,9,E)>1.01 ise +1 değerini verir.
C/MOV(C,9,E)<0.99 ise -1 değerini verir.
Bu 2 durumun dışındaki zamanlarda 0 (sıfır) değerini verir.
İf fonksiyonunun çeşitli kullanımları söz konusudur. Bununla beraber sadece 2 koşulu birbirine bağlamak için if fonksiyonu kullanmanıza gerek yoktur. Bunun için 2 koşulu AND ile bağlamanızı öneririz.
Örnek:
if(MOV(C,25,E)>C,CCI(5)<0,0)
koşulu şu koşula denktir : MOV(C,25,E)>C AND CCI(5)<0

Hoşçakalın.

4 Şubat 2015 Çarşamba

Matriks versiyon güncelleme yöntemleri ve adımları aşağıda açıklanmıştır


BİRİNCİ YÖNTEM

Önemli : Matriks güncelleme işlemi sırasında matriks otomatik olarak kapanacaktır.

Sol üst bölümde bulunan Matriks logosuna tıklayarak çıkan menüden “Ayarlar >Matriks Veri Kütüphanesi” butonuna tıklayın



“İndirilecek Bilgiyi Seçin” butonuna tıklayın ve listeden “BAK” seçin



“BAK” seçildikten sonra “Serverdaki Dosyalar” listesi içerisinden “setup711.exe” isimli dosyaya çift tıklayarak ya da “sağ” ok butonuna tıklayarak kurulum dosyasını “İndirmek İçin Seçilen Dosyalar” listesine eklenir ve ardından “İndir” butonuna tıklanır                        



Matriks veri kütüphanesi yeni versiyonu indirmeye başladığında işaretli alanda belirtildiği gibi ilerleme çubuğu gözükecek ve ilerleme çubuğunun dolmasıyla beraber matriks programı kendini kapatacaktır ve ardından 8. Adımda belirtilen “Matriks Versiyon Yenileme” pencersi çıkarak versiyon güncelleme işlem başlayacaktır, bu işlemin ardından matriks programı otomatik olarak yeniden açılacaktır



Matriks versiyon ve sürüm kontrolü matriks menüsü üzerinde fare ile beklenilerek yapılır.






2 Şubat 2015 Pazartesi

Matriks Veri Terminali Programımızda İndikatör oluştururken kullanılan muhtelif fonksiyonlar vardır.
Highest – Lowest  ifadesi içeren fonksiyonlardan temel 4 tanesinin açıklanması ve örnek uygulamalar:

Highest / Highest High                Highest(Data) - HHV(Data,Period)
Lowest / Lowest Low                  Lowest(Data)  LLV(Data,Period)
Bu fonksiyonlar seçilen bir verinin en yüksek / en düşük değerini hesaplar.
Daha çok Highest High ve Lowest Low seçenekleri kullanılır.
Highest fonksiyonu seçilen verinin geçmişte gerçekleşmiş  en yüksek değerini hesaplar.
Lowest fonksiyonu seçilen verinin geçmişte gerçekleşmiş  en düşük değerini hesaplar.
Örnek olarak: Highest(H) şeklinde bir formül yazalım ve bunu indikatör olarak kaydedelim.
Bu indikatörü Garanti Bankası sembolü üzerine atarsak, Garanti bankası sembolünün ilgili verisinin, ilgili periyod için program içinde yer aldığı günden beri gördüğü yükseklerin en yüksek değerini gösterecektir.
İpucu: Bölünmeler (Temettü vb sebeplerle) dolayısı ile genel olarak BIST sembollerinde yüksek değerler son yıllarda görülecektir. Ama, mesela fiyatı sürekli azalan bir Emtia’ya bakarsanız, en yüksek değerini geçmiş yıllarda görmüş olabilir.
İpucu : En düşük değeri görmek istediğiniz durumda Lowest(L) şeklinde yazmanız gerektiğini unutmayınız. Lowest(H) ifadesi sembolün her bardaki yüksek verisinin (H=High) geçmişteki en düşük değerini verir. Bu da sembolün en düşük fiyatı olmaz.
Yukarıda bahsettiğim gibi daha çok kullanılan seçenekler Highest High ve  Lowest Low fonksiyonlarıdır. Çünkü, genellikle seçeceğimiz bar sayısı boyunca (Tüm seri için değil) en yüksek / en düşük değere ihtiyaç duyarız.
Programımız içinde yazım şablonu
Highest High için HHV(Data,Period)
Lowest Low   için  LLV(Data,Period)
şeklindedir.
Data yerine yazılacak verinin, belirlenen periyod içinde görmüş olduğu en yüksek / en düşük değeri verir.

Örnek: HHV(C,3) formülü bize son 3 bardaki kapanışlardan en yüksek olanının değerini verir.

27 Ocak 2015 Salı

Matriks Veri Terminali Programımızda İndikatör oluştururken kullanılan muhtelif fonksiyonlar vardır.
Bunların kullanımı için örnek uygulamalar:
BarsSince Fonksiyonu  - BarsSince(Data) :

Bu fonksiyon, parantez içine yazmış olduğunuz KOŞULUN, EN SON gerçekleştiği zamandan (Bardan), içinde bulunduğumuz bara kadar geçmiş olan Bar sayısını gösterir.
İpucu: Bu fonksiyonda data kısmına koşul içeren bir formül yazılmalıdır. BU koşul çok basit olabilir veya kompleks olabilir. Ama koşul olmalıdır.

Örnek :
BarsSince(C=10)
Şeklinde yazılmış formül grafik sembolünün bar kapanış değerinin 10 TL’ye (ilgili para birimine) eşit olduğu en son bardan sonra geçen bar sayısını gösterir.

Yukarıdaki grafikte pencerenin alt kısmında  BarsSince(C=10) formülü ile oluşturulan indikatörün çizgisini görmektesiniz.
Garanti Bankası kapanışının 10 TL’ye eşit olmadığı geçmiş dönemde indikatör değeri sıfırdır. (İpucu : Grafik 30 dakikalık bir grafiktir. Gerçekte, sembol daha önce o değeri görmüş olabilir. Grafikte yer alan süreç içinde kapanış o değere eşit olmamıştır). Sembolün kapanış fiyatı 10 TL’ye eşit olduktan sonra her barda indikatörün değeri 1 artar. Kapanış 10 TL’ye tekrar eşit olduğunda indikatör değeri sıfırlanır.


İpucu: Burada şuna dikkat ediniz. Koşul olarak C=10 yazdık. Bar kapanışı= 10 TL  olmadığı sürece koşul gerçekleşmiş olmaz ve barssince indikatörü sıfırlanıp tekrar saymaya başlamaz. Fiyatın aşağı düşmesi bu durumu değiştirmeyeceği gibi, fiyatın tekrar 10 TL’nin üstüne çıkması da bu durumu değiştirmez. Yazdığımız koşullar matematiksel tanımlamalardır. Neyi tanımladığımıza dikkat etmekte fayda vardır. Eğer fiyatın 10 TL’nin altında iken üstüne çıktığı zamanı kast ediyor iseniz parantez içinde yazacağınız koşulu ona göre tanımlamalısınız. Bu durumda başka bir fonksiyon (CROSS fonksiyonu) devreye girmektedir. CROSS fonksiyonu ayrı bir başlık altında anlatılmıştır. (Cross eğitimi ile alakalı link: http://matrikstrader.blogspot.com.tr/ )

21 Ocak 2015 Çarşamba

Matriks Veri Terminali Programımızda İndikatör oluştururken kullanılan muhtelif fonksiyonlar vardır.
Bunların kullanımı için örnek uygulamalar:
CROSS Fonksiyonu         Cross(Data1,Data2)
En önemli fonksiyonlardan birisidir. 2 Ayrı datanın birbiri ile kesiştiği zamanı tanımlar.
Bir koşul oluştururken bazen bir verinin belli bir seviyenin üstünde / altında olması durumuna bakılır.
Örnek: RSI indikatörünün 30’un altında veya 70’in üstünde olması.
Bazen de 2 ayrı verinin birbirine göre durumuna bakılır.
Örnek: Fiyatın hareketli ortalamanın üstünde veya altında olması.
Bu koşulları oluşturmak için <, > işaretleri kullanılabilir.
Mesela:
RSI(C,14)<30 
C>MOV(C,9,E)
Bu koşullarda ilk veri ikinci veriden büyük olduğu süreci koşulunuz doğrulanır. Bakınız aşağıdaki resim.

Yeşil oklar RSI koşulunun doğru olduğu zamanları göstermektedir.
Mavi oklar ise hareketli ortalama koşulunun doğru olduğu zamanları gösterir. Fiyat kırmızı renkli hareketli ortalama çizgisinin üstündedir.
Bu durumda koşulun doğrulandığı ilk anı formül içinde yakalamak mümkün olmaz.
Koşulun ilk gerçekleştiği zamanda bir kesişme söz konusudur. Bu kesişme anını yakalamak için kullanılacak fonksiyon CROSS fonksiyonudur.
Bu fonksiyonun yazılım şablonu aşağıda gösterildiği şekildedir:
Cross(Data1,Data2)
Bu fonksiyon Data1 yerine yazdığımız verinin Data2 yerine yazdığımız veriyi aşağıdan yukarıya kestiği zamanı gösterir.
İpucu: Data1 ve Data2’nin her ikisi de değişken olabilir. Veya biri değişken diğeri sabit bir sayı olabilir.
Verileri CROSS fonksiyonu içine yerleştirerek yazarsak koşullar şu şekilde oluşur:
CROSS(30,RSI(C,14)) 
Dikkat: Koşulumuz RSI(C,14)<30  şeklinde idi. Eğer RSI verisinin 30 un altına indiği anı görmek istiyor isek Data1 yerine 30; Data2 yerine RSI formülünü yazmamız gerekir. Yazdığımız koşullar matematiksel tanımlamalardır. Neyi tanımladığımıza dikkat etmekte fayda vardır.
İpucu: Data1 verisinin Data2 verisini aşağıdan yukarıya kesmesi demek, Data2 deki verinin Data1 deki veriyi yukarıdan aşağıya kesmesi demektir. Burada RSI çizgisi 30 seviyesinin altına iniyor. Yani 30 seviyesi (çizgisi) RSI çizgisini aşağıdan yukarıya kesmektedir.
CROSS(C,MOV(C,9,E))  Bu koşul fiyatın 9 günlük üssel hareketli ortalamanın üstüne çıktığı zamanı gösterecektir. Üstünde kaldığı zamanları göstermeyecektir.
Grafik üzerinde görelim :

Önceki grafikte peş peşe olan yeşil ve mavi oklar yerine 1 ad yeşil ve 1 ad mavi ok vardır.
Sağdaki 2. Mavi ok koşulun tekrar gerçekleştiğini gösterir. Arada, fiyat hareketli ortalamanın altına inmiş ve tekrar üstüne çıkmıştır.

CROSS fonksiyonu oldukça yoğun kullanılan bir fonksiyondur. Dikkat edilmesi gereken bir diğer detay da şudur : Birden fazla koşul birleştirilir iken 2 koşulda da CROSS kullanılması halinde sonuç alamazsınız. Bu detay ile ilgili olarak ‘KOŞULLARIN BİRLEŞTİRİLMESİ’ başlıklı yazımıza bakınız.

31 Aralık 2014 Çarşamba

Borsa İstanbul A.Ş.'de işlem gören payların işlem esaslarının farklılaştırılması - ABC Düzenlemesinde değişiklik

İLGİLİ SPK BÜLTENİNE AŞAĞIDAKİ ADRESTEN ERİŞEBİLİRSİNİZ :
http://www.spk.gov.tr/apps/haftalikbulten/displaybulten.aspx?yil=2014&sayi=30


II) Kurul’un i-SPK.101.1 (30.10.2014 tarihli ve 31/1080 s.k.) sayılı İlke Kararı:
ABC Düzenlemesi olarak bilinen, Borsa İstanbul A.Ş.'de işlem gören payların işlem esaslarının farklılaştırılmasına yönelik Kurulumuz düzenlemelerinin 6362 sayılı Sermaye Piyasası Kanunu ve ikincil mevzuatın yürürlüğe girmesi, Borsa İstanbul’da işlem gören payların işlem esaslarının yeni mevzuat, yeni pazarlar ve son yıllarda halka açılmış olan şirketler dikkate alınarak gözden geçirilmesi sonucunda;
A) Piyasa, platform veya pazar bakımından;
1) Borsa pay piyasasında işlem gören payların işlem esaslarının belirli özellikleri dikkate alınarak farklılaştırılması ve bunların sınıflandırılması amacıyla söz konusu payların A, B ve C olmak üzere üç farklı grupta izlenmesine,
2) Pay piyasası dışında kalan; Gelişen İşletmeler Piyasası (GİP), Serbest İşlem Platformu (SİP), Nitelikli Yatırımcı İhraç Pazarı ve Gözaltı Pazarı’nda (GP) işlem gören payların genel olarak D Grubu adı altında izlenmesine ve söz konusu payların içinde bulunduğu piyasa, platform veya pazarın özellikleri dikkate alınarak farklı işlem esaslarına tabi tutulmasına,
B) Fiili Dolaşımdaki Pay (FDP) değeri bakımından, Borsa tarafından belirlenen değerleme dönemi itibarıyla FDP değerinin ortalaması;
1) 30 milyon TL ve üzerinde olan payların, A Grubuna dahil edilmesine,
2) 30 milyon TL’nin altında ancak 10 milyon TL ve üzerinde olan payların B Grubuna dahil edilmesine,
3) 10 milyon TL’nin altında olan payların C Grubuna dahil edilmesine,
C) Mevcut veya ilave kurallar bakımından;
1) A Grubu payların;
i) Sürekli müzayede işlem yöntemine tabi olmasına,
ii) Kredili alım, açığa satış, ödünç alma veya ödünç verme işlemlerine konu olabilmesine,
2) B Grubu payların;
i) Sürekli müzayede işlem yöntemine tabi olmasına,
ii) Kredili alım, açığa satış, ödünç alma veya ödünç verme işlemlerine konu olabilmesine,
iii) Belirli bir anda oluşabilecek açık takas pozisyonunun %100’ü oranında özkaynak bulundurma şartına tabi olmasına, buna göre bir müşterinin takası henüz gerçekleşmemiş işlemleri sonucunda, belirli bir anda B grubu paylarda oluşabilecek açık takas pozisyonunun asgari %100’ü oranında net varlığının bulunmasının zorunlu olmasına, ayrıca bu paylarda gerçekleştirilen işlemlerde hiçbir suretle ve yatırım kuruluşu yönetim kurulu kararı ile de olsa müşteri bazında veya genel olarak özkaynak oranlarının değiştirilememesine ve teminat alınmaksızın emir kabul edilememesine,
iv) Sermaye piyasası araçlarının kredili alım, açığa satış, ödünç alma veya ödünç verme işlemlerinde özkaynak oranının hesaplanmasında en çok %50’si oranında özkaynak olarak kabul edilebilmesine,
3) C Grubu payların;
i) Piyasa yapıcısı veya likidite sağlayıcısına sahip olması durumunda sürekli müzayede işlem yöntemine tabi olmasına,
ii) Piyasa yapıcısı veya likidite sağlayıcısına sahip olmaması durumunda tek fiyat işlem yöntemine tabi olmasına,
iii) Kredili alım işlemi veya açığa satışa konu olmamasına,
iv) Belirli bir anda oluşabilecek açık takas pozisyonunun %100’ü oranında özkaynak bulundurma şartına tabi olmasına, buna göre bir müşterinin takası henüz gerçekleşmemiş işlemleri sonucunda, belirli bir anda C grubu paylarda oluşabilecek açık takas pozisyonunun asgari %100’ü oranında net varlığının bulunmasının zorunlu olmasına, ayrıca bu paylarda gerçekleştirilen işlemlerde hiçbir suretle ve yatırım kuruluşu yönetim kurulu kararı ile de olsa müşteri bazında veya genel olarak özkaynak oranlarının değiştirilememesine ve teminat alınmaksızın emir kabul edilememesine,
v) Sermaye piyasası araçlarının kredili alım, açığa satış, ödünç alma veya ödünç verme işlemlerinde özkaynak olarak kabul edilmemesine,
4) D Grubunda Gelişen İşletmeler Piyasasına (GİP) dahil olan payların;
i) Piyasa yapıcısına sahip olması durumunda sürekli müzayede işlem yöntemine tabi olmasına,
ii) Piyasa yapıcısına sahip olmaması durumunda tek fiyat işlem yöntemine tabi olmasına,
iii) Kredili alım işlemi veya açığa satışa konu olmamasına,
iv) Belirli bir anda oluşabilecek açık takas pozisyonunun %100’ü oranında özkaynak bulundurma şartına tabi olmasına, buna göre bir müşterinin takası henüz gerçekleşmemiş işlemleri sonucunda, belirli bir anda D grubu paylarda oluşabilecek açık takas pozisyonunun asgari %100’ü oranında net varlığının bulunmasının zorunlu olmasına, ayrıca bu paylarda gerçekleştirilen işlemlerde hiçbir suretle ve yatırım kuruluşu yönetim kurulu kararı ile de olsa müşteri bazında veya genel olarak özkaynak oranlarının değiştirilememesine ve teminat alınmaksızın emir kabul edilememesine,
v) Sermaye piyasası araçlarının kredili alım, açığa satış, ödünç alma veya ödünç verme işlemlerinde özkaynak oranının hesaplanmasında en çok %50’si oranında özkaynak olarak kabul edilebilmesine,
5) D Grubunda Serbest İşlem Platformu (SİP) veya Nitelikli Yatırımcı İşlemleri Pazarına (NYİP) dahil olan payların;
i) Tek fiyat işlem yöntemine tabi olmasına,
ii) Kredili alım işlemi veya açığa satışa konu olmamasına,
iii) Belirli bir anda oluşabilecek açık takas pozisyonunun %100’ü oranında özkaynak bulundurma şartına tabi olmasına, buna göre bir müşterinin takası henüz gerçekleşmemiş işlemleri sonucunda, belirli bir anda D grubu paylarda oluşabilecek açık takas pozisyonunun asgari % 100’ü oranında net varlığının bulunmasının zorunlu olmasına, ayrıca bu paylarda gerçekleştirilen işlemlerde hiçbir suretle ve yatırım kuruluşu yönetim kurulu kararı ile de olsa müşteri bazında veya genel olarak özkaynak oranlarının değiştirilememesine ve teminat alınmaksızın emir kabul edilememesine,
iv) Sermaye piyasası araçlarının kredili alım, açığa satış, ödünç alma veya ödünç verme işlemlerinde özkaynak olarak kabul edilmemesine,
v) Brüt takas uygulamasına tabi olmasına,
6) D Grubunda Gözaltı Pazarına dahil olan payların;
i) Tek fiyat işlem yöntemine tabi olmasına,
ii) Kredili alım işlemi veya açığa satışa konu olmamasına,
iii) Belirli bir anda oluşabilecek açık takas pozisyonunun %100’ü oranında özkaynak bulundurma şartına tabi olmasına, buna göre bir müşterinin takası henüz gerçekleşmemiş işlemleri sonucunda, belirli bir anda D grubu paylarda oluşabilecek açık takas pozisyonunun asgari %100’ü oranında net varlığının bulunmasının zorunlu olmasına, ayrıca bu paylarda gerçekleştirilen işlemlerde hiçbir suretle ve yatırım kuruluşu yönetim kurulu kararı ile de olsa müşteri bazında veya genel olarak özkaynak oranlarının değiştirilememesine ve teminat alınmaksızın emir kabul edilememesine,
iv) Sermaye piyasası araçlarının kredili alım, açığa satış, ödünç alma veya ödünç verme işlemlerinde özkaynak olarak kabul edilmemesine,
Ç) Bu kapsamda; A, B, C ve D gruplarında yer alan paylara ilişkin sınıflandırma ve kuralların aşağıdaki tabloda özetlenen şekliyle kabul edilmesine,



D) Düzenleme kapsamındaki diğer hususlara ilişkin olarak;
1) Yukarıdaki kurallara ek olarak Borsa tarafından belirlenen değerleme dönemi içerisinde ve hesaplama yöntemi ile Borsa fiyatı pay başına net aktif değerinin 1,5 katı ve üzeri olan menkul kıymet yatırım ortaklıklarının B Grubu’na, Borsa fiyatı pay başına net aktif değerinin 2 katı ve üzeri olan menkul kıymet yatırım ortaklıklarının C grubuna dahil edilmesine,
2) Payların sınıflandırılması ve gruplar arası geçiş işlemlerinin belirlenecek değerleme dönemi ve veri seti üzerinden Borsa tarafından yapılmasına,
3) Borsa’ya ilk defa kote olan şirket paylarının grubu belirlenirken; halka arz edilen payların değerinin dikkate alınmasına ve söz konusu payların değerlendirme sonrası dahil oldukları grupların kurallarına göre işlem görmesine,
E) Söz konusu düzenlemenin 2 Ocak 2015 tarihi itibarıyla uygulamaya başlanmasına,
F) Kurulumuzun (1) 23.07.2010 tarihli ve 21/657 sayılı, (2) 23.09.2010 tarihli ve 28/821 sayılı Kararlarının 2 Ocak 2015 tarihi itibarıyla yürürlükten kaldırılmasına karar verilmiştir.
III) Kurul’un i-SPK.128.9 (30.10.2014 tarihli ve 31/1059 s.k.) sayılı İlke Kararı:
23.07.2010 tarihli ve 21/655 sayılı Kurulumuz kararı ile 19.08.2010 tarihli ve 24/729 sayılı Kurulumuz kararında fiili dolaşımdaki pay oranı kavramı dışında tutulacak payları tanımlayan “Şirket sermayesinin %5 ve daha fazlasına sahip olan gerçek ve tüzel kişi ortakların sahip olduğu” ifadesinin, 2 Ocak 2015 tarihinde yürürlüğe girecek yeni ABC Düzenlemesi kapsamında yapılacak hesaplamalardan itibaren kullanılmak üzere “Şirket sermayesinin %10 ve daha fazlasına sahip olan gerçek ve tüzel kişi ortakların sahip olduğu” şeklinde değiştirilmesine karar verilmiştir.

15 Aralık 2014 Pazartesi

KOŞULLARIN BİRLEŞTİRİLMESİ

KOŞULLARIN BİRLEŞTİRİLMESİ:

Birden fazla sayıda koşulun birlikte uygulanabilmesi mümkündür.
Farklı koşulları, formüllerinin arasına AND veya OR koyarak birleştirebilirsiniz.
AND ile birleştirme: Her 2 koşulunda aynı zamanda doğrulanmış olmasını gerektirir.
Örnek:
C>MOV(C,5,E) AND RSI(C,14)<35
İpucu: Koşullar ile AND / OR arasında mutlaka 1 karakterlik boşluk olmalıdır.
Yukarıdaki koşulun anlamı şudur: Kapanış 5 barlık hareketli ortalamadan büyük olacak ve aynı zamanda 14 barlık RSI değeri de 35 ten küçük olacak.
Bu 2 koşulun her ikisi de geçerli olduğu anda sisteminiz sonuç verecektir.
OR ile birleştirme :
C>MOV(C,5,E) OR RSI(C,14)<35
Formülü bu şekilde OR ile yazarsak şunu demiş oluruz:
Yukarıdaki 2 koşuldan sadece bir tanesi bile geçerli olduğu anda sonuç ver.
Bu konuda dikkat edilmesi gereken bazı detaylar vardır.
Kesişme zamanlarını bulmak için koşulların önemli bir kısmı CROSS fonksiyonu ile yazılmaktadır.
Bu durumda 2 koşulun birleştirilmesinde karşımıza bir sorun çıkar. Birden fazla koşulumuz olsun ve her ikisinde de CROSS fonksiyonu kullandığımızı varsayalım. Bu 2 koşulu AND ile birleştirdiğimiz takdirde, her 2 kesişmenin aynı anda (aynı barda) gerçekleşmesi gerekir. Bu da pratikte pek mümkün değildir. Bu sebeple koşullardan birisini (veya her ikisini de) > < işaretlerini kullanarak yazmak gerekir.
Cross fonksiyonunun şablonu :
Cross(Data1,Data2) şeklindedir.

Buradaki koşulu kesişme yerine > / < şeklinde yazmak istersek yapılması gereken şudur :
Data1>Data2 şeklinde yazmak.


  
2 tane koşul varken hangisini > / < şekline dönüştüreyim derseniz aslında yapmanız gereken normalde ikisini de büyüktür - küçüktür şeklinde yazmak olmalıdır.

Yukarıdaki şekle bakınız.  13 Ekim gününde MACD’ye göre kesişme gerçekleşmiştir. Bununla beraber ortalamaların kesişmesi gerçekleşmemiştir.
MACD koşulunu kesişme şeklinde (CROSS ile) bıraktığınızı ve hareketli ortalama kesişmesini MAV(C,5,E)>MAV(C,15,E) şeklinde yazdığınızı düşünelim.
13 Ekim günü hareketli ortalama koşulu henüz gerçekleşmediği için sistemin bütünü sonuç vermeyecektir.
5 günlük hareketli ortalamanın 15 günlük hareketli ortalamanın üstüne çıktığı anda da MACD kesişmesi oluşmadığı için (daha önceden kesişme gerçekleşti çünkü) 15 Ekim gününde de 2 sistemin birlikte çalışması için gerçekleşme sonucu elde edemeyeceksiniz.
Eğer her 2 koşulu da > işareti ile yazarsanız 15 Ekim barında koşullarınız gerçekleşti sonucu alırsınız.
Burada belirleyici olan sizin beklentilerinizdir.
Koşullardan birisi sizin için daha önemli (belirleyici) olabilir. Ve kesişme olduğu anda (diğer koşullarda uygun ise) alırım, yoksa bir sonraki kesişmeyi beklerim diyebilirsiniz.
O zaman o koşulu kesişme kuralı ile tutmanız gerekir.


Koşulların birleştirilmesinde temel mantık bu şekildedir. Koşul sayısı arttıkça CROSS kullanımı zorlaşır. Bu sebeple CROSS içeren koşullarınızın formüllerini > veya < işareti kullanacak şekilde değiştirmenizde fayda vardır.

27 Ekim 2014 Pazartesi

Sistemlerin Optimizasyonu Bölüm 2

Sistemlerin Optimizasyonu Bölüm 2:

Optimize edeceğiniz parametrelerle ilgili dikkat edilmesi gereken detaylar

1. Parametreler yerine Opt1, Opt2 tanımlarken, aynı parametre için aynı opt numarasını vermelisiniz. Farklı parametre için de farklı opt numarası vermelisiniz. Aşağıdaki örnekte bu durumu detaylandıracağız.

2. Optimizasyonda seçeceğiniz alt –üst değerler ve adımlar indikatörün parametresinin genel yapısı ile uyumlu olmalıdır. Bununla beraber duruma göre esnek olunması gerekir.
Örnek olarak: Hareketli ortalamalarda ön tanımlı bahsedilen rakamlar 5 ve 22 günlük ortalamalardır. Bu durumda parametre olarak 1-50 ve 10-100 kullanılması mantıklı görünür.
Gene de bazı sembollerde ve periyotlarda çok daha yüksek periyodların kullanımı daha iyi sonuçlar verebilmektedir. Bu sebeple hareketli ortalamalarda üst limit belirlerken daha yüksek seviyelere (100-300-500) çıkmak anlamlı olabilir.
Mesela CCI için ön tanımlı değer 14 tür. Bu indikatör için çok yüksek değerlere çıkmaktansa sınırları en fazla 1-100 arasında belirlemek daha anlamlı olacaktır.
İpucu: Eğer en iyi sonucu veren opt değerleri belirlediğiniz bir sınır değerde ( veya o sınıra çok yakın gerçekleşiyor) ise, sınırı o değerden daha öteye çekerek denemenizde fayda vardır. Mesela sınır değer olarak 10-50 verdiniz diyelim. En iyi sonucu veren parametre 45-50 arasında çıkıyor ise muhtemelen sınırı 20-60 veya 30-70 olarak sınır belirleyip tekrar test yapmanız muhtemelen daha iyi sonuçlar verecektir.

3- Sınır belirlemede çok daha önemli ikinci detay ise şudur :
Parametrenin olası değerleri bazen çok farklı seviyelerde olabilir. Mesela MOST için yüzdelik değer, ön tanımlı 2 dir. Ve bu değerin genel olarak en fazla 0-5 arasında  hareket etmesi anlamlı sonuçlar verir.
Burada sınırları 1-30 vermenin hiçbir anlamı olmaz.
Bu durumda sınırlar 0-5 olarak belirlenirken adımın ise mesela 0.1 olarak belirlenmesi anlamlı olacaktır.
Benzer şekilde Bollinger indikatörünün sapma parametresi, psar vb indikatörlerin adım parametreleri için optimizasyon belirlerken seviyeler ve adımlar kendilerine uygun olmalıdır.

4-Test sayısı çok fazla olduğunda :
Opt sayısı veya sınırlar çok arttığı takdirde test sayısı çok artabilir. Bu da test açısından çok zaman alabilir.
Sayıyı azaltmak için pratik bir yöntem adım miktarını artırmaktır.
Örnek olarak 2 ortalamanın kesişmesinde yüksek rakamları baz alsak ne elde edebiliriz diye düşündüğümüzü var sayalım.
Her ortalama için alt sınırı 1, üst sınırı 1.000 alalım.
2 opt vardır. Adım miktarını 1 olarak belirler isek, her biri için 1000 olasılık oluşur.
Toplam test sayısı 1000*1000 = 1 milyon olur.
DİKKAT : Opt sayısının artması test sayısını katlanarak artırır.
Bu 2 değişkene sadece 1 değişken eklesek ve onun için sınırlar 1-10 olsa bile, test sayısı bir anda 10 milyona çıkacaktır.
Örneğimize dönelim .
En iyi sonuçları verecek ortalamayı belirlerken adımı 1 değil de 10 alır isek, test sayısı bir anda 10.000’e düşecektir.
Sınırlar 1-1000 ve adım 10 olur ise bir opt için olasılık sayısı 100’e düşecektir. 2 opt için 100*100=10.000 olasılık olur.
İpucu :  Sınır 1-1000 arasında iken en iyi sonucu verecek değerin 760 hesaplanması ile 770 hesaplanması arasında aslında çok büyük fark olmayacaktır. Mutlaka en detaylı sonuca ulaşmak istiyor iseniz de çözüm var. Diyelim ki en iyi sonucu veren opt değerleri 500 ve 760 geldi.
Bir sonraki test için sınırları 490-510 ve 750-770 olarak belirleyip, adım değerini de 1 alırsanız daha hassas sonuca ulaşabilirsiniz. Burada test sayısı 20*20 = 400 olacaktır. Toplam 10.400 test ile 1 milyon olasılığın testinin vereceği sonuca ulaşabileceksiniz.
Burada şunun farkında olmanız gerekiyor :
Sınır 1-1000 iken adımı 10 yapmak çok faydalıdır. Sınırlar mesela 20-40 iken adımı 10 yapmak o kadar da faydalı / etkili olmayacaktır.
Adım değerini belirlerken sınırlara ve test sayısını azaltmak istediğiniz hedefe göre karar veriniz.
Sınır 20-40 iken adımı 2 yapmak 20 olasılığı 10 olasılığa düşürecektir.

6. Opt tanımlanması :
Dikkat edilmesi gereken ilk detay, özdeş parametreler için aynı opt leri kullanır iken, farklı parametreler için farklı opt ler belirlemektir.
Burada aynı indikatörü farklı parametreler ile birden fazla sefer kullanıyor olabilirsiniz veya farklı indikatörler kullanıyor olabilirsiniz.
Mesela formülünüzün aşağıdaki 2 indikatörü içerdiğini var sayalım.
(STOFK(14,6)   ULT(7,14,28))
Burada dönüşümü :
STOFK(opt1,opt2)
ULT(opt3,opt4,opt5) şeklinde yapmalısınız.
Yani STOFK parantezi içinde gördüğünüz her 14 yerine opt1 ve her 6 yerine opt2 yazmalısınız.
ULT için de aynı şekilde….. opt3,opt4,opt5 koyarak gitmelisiniz.
ULT parantezi içinde 14 var diye o 14 yerine opt1 yazarsanız YANLIŞ yapmış olursunuz.
Opt1 STOFK değişkenidir. Artık ULT değişkeni olmamalıdır.

5. Opt tanımlamasına başka bir örnek:
2 ortalamanın kesişimi üzerinden gidelim.
AL koşulumuz : Cross(MOV(c,opt1,E),MOV(c,opt2,e)) olacaktır.
Burada 2 ayrı ortalama periyodu için 2 ayrı opt tanımlanmıştır.
Normalde sat koşulunun:
Cross(MOV(c,opt2,E),MOV(c,opt1,e))
Olması gerekir.
Yani ilkinin tam tersi. Ve sadece 2 opt ile sonuca gidersiniz.
AÇIKLAMA : Burada opt1 li Hareketli Ortalama opt2li Hareketli Ortalamayı aşağıdan yukarıya kestiğinde AL olacaktır.
Yukarıdan aşağıya kestiğinde ise SAT sinyali olacaktır.
Merak ederseniz şunu deneyebilirsiniz :
SAT koşulunu :
Cross(MOV(c,opt3,E),MOV(c,opt4,e))
Olarak yazmak.
Bu durumda şunu demiş oluyorsunuz :
AL verecek ortalamalar ile SAT verecek ortalamalar birbirinden bağımsız olsun (Olabilir)
Yani burada,
Opt1 li MOV Opt2li MOV’u yukarı kestiğinde AL sinyali olacaktır.
Ama sat sinyali başka 2 ortalamanın kesişimi ile olabilir.
NOT : Test sonucu opt3 veya opt4 ile opt1 veya opt2 aynı çıkabilir. Bu da bir olasılıktır.
Yani AL ve SAT için farklı opt ler belirliyorsunuz.
* Bu opt sayısını çok artıran bir şeydir.
* Testlerde biraz daha iyi getiriler getirebilir ama gerçekte her zaman göründüğü gibi etkili değildir.
Tabii ki tercih sizindir ama, standart durumlarda AL ve SAT için farklı opt seti kullanmamayı tercih etmenizi öneririm.
Kullanırsanız da mutlaka stop kullanmayı tercih edin.

Farklı opt setleri birbiri ile uyumsuz olacağı için terse düşen AL veya SAT durumundan yeterince vaktinde çıkmayı sağlamayabilir.

20 Ekim 2014 Pazartesi

Sistemlerin Optimizasyonu Bölüm 1;

Sistemlerin Optimizasyonu Bölüm 1;

Oluşturduğumuz bir sistem için, rakamsal parametreleri daha farklı olsa nasıl bir sonuç alırdık diye düşündüğümüz durumlar olabilir.

Sistem Tester uygulamamızda rakamsal parametreler için (Sadece rakamsal parametreler için mümkündür) değişken tanımlaması yaparak, olası farklı değerlerin nasıl sonuçlar vereceğini test edebilmekteyiz.
Parametrelerden kastımız öncelikli olarak kullandığımız indikatörlerin parametreleridir. Bununla beraber formül içinde kullandığınız herhangi bir rakam var ise,
bunun için de değişken tanımlayarak optimizasyon yapabilirsiniz.
Değişken tanımlama uygulamasının başlangıç adımı şöyledir:
Rakamsal parametrenin yerine OPT1 yazmak. Örnek olarak :
MOV(C,12,E) ifadesi 12 barlık üssel hareketli ortalamayı temsil eder. Burada 12 yerine OPT1 yazmalıyız.
Formülün bu kısmı MOV(C,OPT1,E) şekline dönüşür.
Hatırlatma: Sistem Tester uygulamasında yazacağımız formül koşul içermelidir. Yani MOV(C,OPT1,E) ifadesi ancak formülün bir parçası olmak durumundadır.
Formül içinde bir rakamsal parametre yerine OPTxx yazdığımız zaman, Sistem Tester uygulamasının değişkenler sekmesinde tanımladığımız değişken listelenir.
İpucu: Değişken tanımlarken OPT1 / OPT2 / …. Şeklinde her farklı parametre için farklı bir değişken tanımlamalısınız. Tanımladığınız her değişken, değişkenler sekmesinde listelenecektir.
Bu sekmede değişken üzerine tıklayınız. Üst kısımda bu değişken için Alt Sınır – Üst Sınır ve Adım rakamlarını belirleme hücreleri vardır.
Bir örnek olarak Alt Sınır=1; Üst Sınır=9 ve Adım=1 olarak belirlediğimizi varsayalım.
İpucu: Kaydet butonuna tıklamayı unutmayınız. Verdiğiniz değerler alttaki listede ilgili yerlere eklenecektir.
Bu durumda sistemin yapacağı şudur: İlgili parametre için 1’den 9’a kadar olan değerler için hesaplama yapacak ve sonuçları getiri yüksekliğine göre listeleyecektir.
Bir sonraki anlatımda değişken tanımlarken nelere dikkat edilmesi gerektiğini örneklerle anlatacağız.

Matriks Veri Terminali Yardım Dökümanı:

http://www.matriksdata.com/website/bireysel-urunler/matriks-veri-terminali/dokumanlar/matriks-veri-terminali-ileri-teknik-analiz-modulleri-egitim-dokumani

13 Ekim 2014 Pazartesi

PARABOLİK indikatörü

PARABOLİK indikatörünün Matriks Veri terminali programı içinde kullanımı:

Bu indikatörde Parabolic Sar indikatöründe olduğu gibi, sinyaller fiyat ile indikatör çizgilerinin kesişmesi ile oluşur. Birbirlerine oldukça benzerler. Hesaplama şekilleri arasında hafif bir fark vardır. Aynı grafik üzerine atarsanız farkı görebilirsiniz.
Parabolik indikatörünün Matriks program dilinde yazılım şablonu :
PAR(Adim,Max.Adim) şeklindedir. Buna göre

AL formülü:
Cross(C,PAR(0.02,0.2))

SAT Formülü:
Cross(PAR(0.02,0.2),C)

Bu formüllerde 0.02 ve 0.2 rakamları Parabolik indikatörünün Adım ve Maksimum Adım parametreleridir.
İzlediğiniz sembole göre veya grafiğin periyoduna göre (Günlük, 60 dk, 5 dk gibi) farklı parametreler daha iyi sonuçlar verebilir.
Daha ayrıntılı bilgi için ve formüllerin programımızdaki modüllerde nasıl uygulanabileceği için
http://217.118.24.4/documents/ILERI_TEKNIK_ANALIZ.pdf
linkinde bulunan dokümanda
Ve,
http://www.matriksdata.com/MatriksVeriTerminaliKullanimKilavuzu/TeknikAnalizVideolari.htm
Linkinde bulunan videolarda temel bilgileri bulabilirsiniz.
Olası sorularınız için bizimle irtibata geçebilirsiniz.
Tel: 0212 354 54 54
E-posta: egitim@matriksdata.com