I wanted first Stop to be initial stop set to StopTicksShort but its not doing it..
StopTicksLong = -20;
StopTicksShort = 20;
EnterShort(1,PositionSize, "TMS");
myFreeTradeShort = true;
myCurrentTrail = true;
MySarStop = (Position.AveragePrice - (StopTicksShort * TickSize)) ;
myFreeTradeShortTrail = true;
switchtrail = true;
#region Trail Stop Long and Short
if (SetTrail )
{
if((myFreeTrail == true )
&&(Position.MarketPosition == MarketPosition.Long || Position.MarketPosition == MarketPosition.Short))
{
if ((Position.MarketPosition == MarketPosition.Long && myFreeTradeLongTrail == true)
&& (ParabolicSAR1[0] < Low[0]) )
{
MySarStop = ParabolicSAR1[0];
}
if (Position.MarketPosition == MarketPosition.Long && myFreeTradeLongTrail == true )
{
if(MySarStop <= bid ){
ExitLongStopMarket(1, true, Position.Quantity, MySarStop, "SLL", "TML");
}
}
if (Position.MarketPosition == MarketPosition.Long && myFreeTradeLongTrail == true && switchtrail == true)
{
// ExitLongStopMarket(1, true, Position.Quantity, MySarStop, "SLL", "TML");
// ExitLongLimit(1, true, Position.Quantity, Position.AveragePrice + (TickSize * TrailTakeProfit), "PTL", "TML");
if(UseRiskReward)
{
if(onetoone){
ExitLongLimit(1, true, Position.Quantity, Position.AveragePrice + (TickSize * rr1to1Long), "PTL", "TML");
}
if(onetoonehalf){
ExitLongLimit(1, true, Position.Quantity, Position.AveragePrice + (TickSize * rr1to15Long), "PTL", "TML");
}
if (onetotwo){
ExitLongLimit(1, true, Position.Quantity, Position.AveragePrice + (TickSize * rr1to2Long), "PTL", "TML");
}
if (onetotwohalf){
ExitLongLimit(1, true, Position.Quantity, Position.AveragePrice + (TickSize * rr1to25Long), "PTL", "TML");
}
if (onetothree){
ExitLongLimit(1, true, Position.Quantity, Position.AveragePrice + (TickSize * rr1to3Long), "PTL", "TML");
}
else
ExitLongLimit(1, true, Position.Quantity, Position.AveragePrice + (TickSize * TrailTakeProfit), "PTL", "TML");
}
switchtrail =false;
}
if ((Position.MarketPosition == MarketPosition.Short && myFreeTradeShortTrail == true )
&& (ParabolicSAR1[0] > High[0]))
{
MySarStop = ParabolicSAR1[0];
}
if (Position.MarketPosition == MarketPosition.Short && myFreeTradeShortTrail == true )
{
if(MySarStop >= ask){
ExitShortStopMarket(1, true, Position.Quantity, MySarStop, "SLS", "TMS");
}
}
if (Position.MarketPosition == MarketPosition.Short && myFreeTradeShortTrail == true && switchtrail == true )
{
// ExitShortStopMarket(1, true, Position.Quantity, MySarStop, "SLS", "TMS");
// ExitShortLimit(1, true, Position.Quantity, Position.AveragePrice - (TickSize * TrailTakeProfit), "PTS", "TMS");
if(UseRiskReward )
{
if(onetoone){
ExitShortLimit(1, true, Position.Quantity, Position.AveragePrice - (TickSize * rr1to1Short), "PTS", "TMS");
}
if(onetoonehalf){
ExitShortLimit(1, true, Position.Quantity, Position.AveragePrice - (TickSize * rr1to15Short), "PTS", "TMS");
}
if (onetotwo){
ExitShortLimit(1, true, Position.Quantity, Position.AveragePrice - (TickSize * rr1to2Short), "PTS", "TMS");
}
if (onetotwohalf){
ExitShortLimit(1, true, Position.Quantity, Position.AveragePrice - (TickSize * rr1to25Short), "PTS", "TMS");
}
if (onetothree){
ExitShortLimit(1, true, Position.Quantity, Position.AveragePrice - (TickSize * rr1to3Short), "PTS", "TMS");
}
else
ExitShortLimit(1, true, Position.Quantity, Position.AveragePrice - (TickSize * TrailTakeProfit), "PTS", "TMS");
}
switchtrail =false;
}
}
}
#endregion

Comment