Merhaba,
Bir stratejide, ilgili strateji durdurulup tekrar çalıştırıldığında mevcut portföye göre pozisyon almasını istiyorum. Strateji kabaca şöyle işliyor. Örneğin garan için spottaki fiyata bakıp, yakın vadelide çift taraflı işlem yapıyor. parametreleri de "garan" ve "fgaran" şeklinde veriyorum.
Arka arkaya long veya short açmaması için kendim "position" parametresi ile pozisyonu takip ediyorum. Bu parametre "-1, 0, 1" değerleri arasında gidip geliyor. position eğer 1 ise long pozisyonum var, stop kontrolü yap diyorum. -1 ise tam ters mantık açıkta short pozisyon var, yeni short açma eldeki pozisyonun stopunu kontrol et diyorum. Eğer position 0 ise long veya short için kontrol yapıp ona göre pozisyon açtırıyorum.
Dolayısıyla en başta ben 5 konratlık pozisyonlar ile işlem yapmayı seçtiysem mesela algoritma "long(uzun)-short(stop)-long(uzun)-short(stop)-short(kısa)-long(stop)-..." gibi bir örüntü ile çift taraflı işlemler yapıyorum. Bu yüzden "long(uzun)-long(uzun)" veya "short(kısa)-short(kısa)" gibi arka arkaya aynı yönde birden fazla pozisyon açmamasını bir parametre ile kontrol ederek tutuyorum.
Sorunum ise, mesela elimde gün sonu short pozisyon var. Stratejiyi durdur dediğimde yukarıdaki algoritmaya göre son durumda "position = -1", ertesi gün stratejiyi tekrar devam ettirince ise "position = 0" yani initial hali ile başlıyorum. yani önceki pozisyonu tutamıyorum.
Şimdi benim sorunum aslında strateji tekrar çalıştırıldığında portföye bakıp; eğer portföyde vadeli kontrat pozisyonu varsa mesela yukarıdaki örnekte short pozisyon olmalı, "position = 0" olarak çalışmaya başlama,"position = -1" olarak kaldığın yerden devam edebilmesini sağladığım noktada çözülüyor.
Bu noktada bir öneriniz olur mu?