CExpert

CExpert, alım-satım stratejileri için bir temel sınıftır.

Bünyesinde bazı orta seviye alım-satım yetenekleri barndırır. Bu sınıf, zaman serileri ve göstergeler ile çalışmak için kullanıma hazır algoritmalar ve alım-satım stratejileri için bir takım sanal yöntemler içerir.

Nasıl kullanılır:

1. Bir strateji algoritması hazırlayın;
2. CExpert sınıfının soyundan gelen bir sınıf örneği oluşturun;
3. Sınıfınızdaki sanal yöntemleri kendi algoritmanızı kullanarak yeniden tanımlayın.

Açıklama

CExpert sınıfı, alım-satım stratejilerinin uygulanması için bir takım sanal yöntemlerden oluşur.

Not

Bir pozisyonun hangi Uzman Danışmana tarafından yönetildiği m_symbol ve m_magic özellikleri ile belirlenir. Hedge'li modda bir sembol üzerinde birden çok pozisyon açılabildiği için m_magic değeri önemlidir.

Bildirim

   class CExpert : public CExpertBase

Başlık

   #include <Expert\Expert.mqh>

Kalıtım hiyerarşisi

  CObject

      CExpertBase

          CExpert

Gruplarına göre Sınıf Yöntemleri

Başlatma

 

Init

Sınıf örneği başlatma yöntemi

virtual InitSignal

Alım-satım Sinyali nesnesini başlatır

virtual InitTrailing

Trailing Stop (iz-süren stop) nesnesini başlatır

virtual InitMoney

Para yönetimi nesnesini başlatır

virtual InitTrade

Alım-satım nesnesini başlatır

virtual ValidationSettings

Ayarları denetler

virtual InitIndicators

Göstergeleri ve zaman serilerini başlatır

virtual InitParameters

Uzman Danışman parametreleri için başlatma yöntemi

virtual Deinit

Sınıf örneği sonlandırma yöntemi

virtual DeinitSignal

Alım-satım sinyali nesnesini sonlandırır

virtual DeinitTrailing

Trailing Stop (iz-süren stop) nesnesini sonlandırır

virtual DeinitMoney

Para yönetimi nesnesini sonlandırır

virtual DeinitTrade

Alım-satım nesnesini sonlandırır

virtual DeinitIndicators

Göstergeleri ve zaman serilerini sonlandırır

Parametreler

 

Magic

Uzman Danışmanın tanımlayıcısını ayarlar

MaxOrders

İzin verilen maksimum emir sayısını alır/ayarlar

OnTickProcess

"OnTick" olayını işlemek için bir bayrak ayarlar

OnTradeProcess

"OnTrade" olayını işlemek için bir bayrak ayarlar

OnTimerProcess

"OnTimer" olayını işlemek için bir bayrak ayarlar

OnChartEventProcess

"OnChartEvent" olayını işlemek için bir bayrak ayarlar

OnBookEventProcess

"OnBookEvent" olayını işlemek için bir bayrak ayarlar

Olay işleme yöntemleri

 

OnTick

OnTick olay işleyicisi

OnTrade

OnTrade olay işleyicisi

OnTimer

OnTimer olay işleyicisi

OnChartEvent

OnChartEvent olay işleyicisi

OnBookEvent

OnBookEvent olay işleyicisi

Güncelleme Yöntemleri

 

Refresh

Tüm verileri günceller

Processing

 

Processing

Temel işleme algoritması

Piyasa Giriş Yöntemleri

 

CheckOpen

Pozisyon açma koşullarını denetler

CheckOpenLong

Uzun pozisyon açma koşullarını denetler

CheckOpenShort

Kısa pozisyon açma koşullarını denetler

OpenLong

Uzun pozisyon açar

OpenShort

Kısa pozisyon açar

Piyasadan Çıkış Yöntemleri

 

CheckClose

Mevcut pozisyonu kapama koşullarını denetler

CheckCloseLong

Uzun pozisyon kapama koşullarını denetler

CheckCloseShort

Kısa pozisyon kapama koşullarını denetler

CloseAll

Açık pozisyonu kapar ve tüm emirleri iptal eder

Close

Açık pozisyonu kapatır

CloseLong

Uzun pozisyonu kapatır

CloseShort

Kısa pozisyonu kapatır

Pozisyon Çevirme Yöntemleri

 

CheckReverse

Açık pozisyon için ters çevirme koşullarını denetler

CheckReverseLong

Uzun pozisyon için ters çevirme koşullarını denetler

CheckReverseShort

Kıza pozisyon için ters çevirme koşullarını denetler

ReverseLong

Uzun pozisyonu ters çevirir

ReverseShort

Kısa pozisyonu ters çevirir

Posisyon/Emir Taşıma Yöntemleri

 

CheckTrailingStop

Pozisyon parametrelerinin değişimi için koşulları denetler

CheckTrailingStopLong

Uzun pozisyon için Trailing Stop (iz-süren stop) koşularını denetler

CheckTrailingStopShort

Kısa pozisyon için Trailing Stop koşularını denetler

TrailingStopLong

Uzun pozisyon için Trailing Stop işlemi gerçekleştirir

TrailingStopShort

Kısa pozisyon için Trailing Stop işlemi gerçekleştirir

CheckTrailingOrderLong

Limit/Stop Alış emirleri için Trailing Stop koşullarını denetler

CheckTrailingOrderShort

Limit/Stop Satış emirleri için Trailing Stop koşullarını denetler

TrailingOrderLong

Limit/Stop Alış emirleri için Trailing Stop işlemi gerçekleştirir

TrailingOrderShort

Limit/Stop Satış emirleri için Trailing Stop işlemi gerçekleştirir

Emir Silme Yöntemleri

 

CheckDeleteOrderLong

Alış emrinin silinmesi için koşulları denetler

CheckDeleteOrderShort

Satış emrinin silinmesi için koşulları denetler

DeleteOrders

Tüm emirleri siler

DeleteOrder

Bekleyen emri (Limit/Stop) siler

DeleteOrderLong

Bekleyen Limit/Stop Alış emrini siler

DeleteOrderShort

Bekleyen Limit/Stop Satış emrini siler

İşlem Hacmi Yöntemleri

 

LotOpenLong

Uzun (alış) işlemin hacim değerini alır

LotOpenShort

Kısa (satış) işlemin hacim değerini alır

LotReverse

Pozisyonun ters çevrilmesinde kullanılan işlem hacmi değerini alır

İşlem Geçmişi Yöntemleri

 

PrepareHistoryDate

Geçmiş takibi için başlangıç tarihi oluşturur

HistoryPoint

İşlem geçmişi için bir kontrol noktası oluşturur (pozisyonların, emirlerin, ve geçmiş işlemlerin sayısını kaydeder)

CheckTradeState

Mevcut durumu kaydedilmiş olanla karşılaştırır ve ilgili olay işleyicisini çağırır

Olay Bayrakları

 

WaitEvent

Alım-satım olayı bekleme bayrağını ayarlar

NoWaitEvent

Alım-satım olayı bekleme bayrağını sıfırlar

Alım-Satım Olayı işleme Yöntemleri

 

TradeEventPositionStopTake

"Stop Loss/Take Profit tetiklendi" olayının işleyicisi

TradeEventOrderTriggered

"Bekleyen Emir Tetiklendi" olayının işleyicisi

TradeEventPositionOpened

"Pozisyon Açıldı" olayının işleyicisi

TradeEventPositionVolumeChanged

"Pozisyon Hacmi Değişti" olayının işleyicisi

TradeEventPositionModified

"Pozisyon Değiştirildi" olayının işleyicisi

TradeEventPositionClosed

"Pozisyon Kapandı" olayının işleyicisi

TradeEventOrderPlaced

"Bekleyen Emir Oluşturuldu" olayının işleyicisi

TradeEventOrderModified

"Bekleyen Emir Değiştirildi" olayının işleyicisi

TradeEventOrderDeleted

"Bekleyen Emir Silindi" olayının işleyicisi

TradeEventNotIdentified

Tanımlanmayan olay için olay işleyici

Hizmet yöntemleri

 

TimeframeAdd

İzlenecek zaman-dilimi ekler

TimeframesFlags

Zaman-dilimi bayraklarını ayarlar

SelectPosition

Çalışılacak bir pozisyon seçer

Sınıftan türetilen yöntemler CObject

Prev, Prev, Next, Next, Save, Load, Type, Compare

Sınıftan türetilen yöntemler CExpertBase

InitPhase, TrendType, UsedSeries, EveryTick, Open, High, Low, Close, Spread, Time, TickVolume, RealVolume, Symbol, Period, Magic, SetMarginMode, SetPriceSeries, SetOtherSeries