Merhaba,
Aşağıdaki gibi bir yapı kurulabilir saat 17:55:00 ile 17:55:05 aralığında elinizde pozisyon varsa kapatacaktır.
public override void OnInit()
{
AddSymbol(Symbol, SymbolPeriod);
most = MOSTIndicator(Symbol, SymbolPeriod, OHLCType.Close, Period, Percentage, MovMethod.Exponential);
WorkWithPermanentSignal(true);
SendOrderSequential(true, Side.Buy);
SetTimerInterval(1);
}
// Gerekli zaman aralığı
[Parameter("17:55:00")]
public string Baslangic;
[Parameter("17:55:05")]
public string Bitis;
public bool FX_ZamanindaMI(DateTime zaman)
{
var bas = TimeSpan.Parse(Baslangic);
var bit = TimeSpan.Parse(Bitis);
return (zaman.TimeOfDay >= bas && zaman.TimeOfDay <= bit);
}
// # Gerekli zaman aralığı
bool pozisyonKapatildiMI=false;
public override void OnTimer(){
if(FX_ZamanindaMI(DateTime.Now)){
// belirlenen zaman aralığında
var portfoy=GetPortfolio();
if(portfoy.ContainsKey(Symbol) && pozisyonKapatildiMI==false){
var adet=portfoy[Symbol];
if(adet>0){
SendMarketOrder(Symbol,adet,OrderSide.Sell);
Debug("Pozisyon kapatıldı");
pozisyonKapatildiMI=true;
}
}
}else{
pozisyonKapatildiMI=false;
}
}