Merhabalar,
*********public class Fonksiyonunun içerisine gerekli tanımlamalar yapılır
[Parameter(5)]
public decimal Percent;
[Parameter(0.01)]
public decimal PricePoint;
int FirstRun = 0;
int realposition = 0;
[Parameter(false)]//true set edilirse kademeli, false set edilirse yüzdeli hareketli stoploss olarak çalışır
public bool PricePoint_or_Percent;
*******public override void OnInitComplated() fonksiyonundan önce aşağıdaki kodu ekliyoruz
SyntheticOrderPriceType type;
decimal stopLevel;
ISyntheticOrderPrices trailingstop = null;
*******public override void OnDataUpdate fonksiyonunun içerisine
if (PricePoint_or_Percent)
//PricePoint_or_Percent true set edilmiş ise kademeli stoploss aktif olur
{
stopLevel = PricePoint;
type = SyntheticOrderPriceType.PricePoint;
}
if (!PricePoint_or_Percent)
//PricePoint_or_Percent false set edilmiş ise yüzdeli stoploss aktif olur
{
stopLevel = Percent;
type = SyntheticOrderPriceType.Percent;
}
********* İf ALIŞ fonksiyonunun devamında
SendMarketOrder(Symbol, Quantity, OrderSide.Buy);
Debug("Bayım,Alış emri gonderildi.");
FirstRun = 1;
Debug("Close : " + close);
trailingstop = TrailingStopLoss(barDataModel.SymbolName, type, stopLevel);
Debug("TrailingStopLoss => " + trailingstop);
Debug("*****************************************************");
}
else
{
SendMarketOrder(Symbol, Quantity, (OrderSide.Buy));
Debug("Bayım,Alış emri gonderildi.");
trailingstop = TrailingStopLoss(barDataModel.SymbolName, type, stopLevel);
Debug("TrailingStopLoss => " + trailingstop);
Debug("*****************************************************");
}
Ve if Satış fonksiyonunun devamında da Buy kısmını Sell yaparak kullanabilirsiniz.