0 beğenilme 0 beğenilmeme
178 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 | 178 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);
				}
			}
		}

 

(15,682 puan) tarafından
7,637 soru
7,640 cevap
4,448 yorum
10,977 kullanıcı