0 beğenilme 0 beğenilmeme
520 kez görüntülendi
Merhaba, backtest esnasında ( kullanıcı seçimine göre ) getirebilir miyiz? Teşekkürler,
bir cevap ile ilgili: Portföy bilgisini kod ile almak
Algoritmik Trading kategorisinde (22 puan) tarafından | 520 kez görüntülendi

1 cevap

0 beğenilme 0 beğenilmeme

Merhaba,

Sadece canlıda çalışmasını istediğiniz kod blokları varsa bunu if (LiveMode) kontrolü ile yapabilirsiniz.

sadece backtestte çalışmasını istediğini kod satırlarını da  if (!LiveMode) kontrolü ile yapabilirsiniz.

Aşağıdaki yapıyı inceleyebilirsiniz.

iyi çalışmalar.

public override void OnInitComplated()
		{
			if (LiveMode)
			{
				decimal bistBakiye, viopBakiye, binanceSpotBakiye, binanceFutureBakiye;

				var accounts = GetTradeUser().Accounts;
				var bist = accounts.FirstOrDefault(x => (int) x.ExchangeID == (int) ExchangeType.Ise);
				var viop = accounts.FirstOrDefault(x => (int) x.ExchangeID == (int) ExchangeType.Viop);
				var binanceSpot = accounts.FirstOrDefault(x => (int) x.ExchangeID == (int) ExchangeType.Crypto);
				var binanceFuture = accounts.FirstOrDefault(x => (int) x.ExchangeID == (int) ExchangeType.BinanceUsdtFutures);

				bistBakiye = bist != null? bist.AvailableMargin:0;
				viopBakiye = viop != null? viop.AvailableMargin:0;
				binanceSpotBakiye = binanceSpot != null? binanceSpot.AvailableMargin:0;
				binanceFutureBakiye = binanceFuture != null? binanceFuture.AvailableMargin:0;

				Debug("Bist: " + bistBakiye + " Viop: " + viopBakiye + " Binance Spot: " + binanceSpotBakiye + " Future: " + binanceFutureBakiye);

				var pozisyon = GetRealPositions();

				if (pozisyon.ContainsKey(Symbol))
				{
					var satılabilirAdet = pozisyon[Symbol].QtyAvailable;
					var ortMaliyet = pozisyon[Symbol].AvgCost;
					var yon = pozisyon[Symbol].Side;
					if (yon.Obj == Side.Buy)
					{
						Debug("Long pozisyondasınız");
					}else
					{
						Debug("Short pozisyondasınız");
					}

					Debug("Satılabilir adet: " + satılabilirAdet + " Maliyet: " + ortMaliyet);
				}
			}
		}

 

(16,379 puan) tarafından
Hoş geldiniz, Matriks Destek Platformu sizlere sorularınızın hızlıca cevaplanması için bir ortam sağlar. Sorduğunuz ve cevapladığınız soruların ve yorumlarınızın aldığı oylar üzerinden puan kazanırsınız. Puan sistemine bağlı kampanyamızla ücretsiz kullanım avantajlarından faydalanabilirsiniz.



9,762 soru
9,723 cevap
5,239 yorum
52,092 kullanıcı