Removed Active from StopLimits. The real solution is to have an additional key on the stop limits table in addition to Symbol..like Shares.
This commit is contained in:
@@ -1069,7 +1069,7 @@ namespace TradeBlotter.ViewModels
|
||||
{
|
||||
bool deleteStop=false;
|
||||
Position clonedPosition=Position.Clone(selectedPosition.Position);
|
||||
bool hasStopLimit=PortfolioDA.HasStopLimit(clonedPosition.Symbol);
|
||||
bool hasStopLimit=StopLimitDA.HasStopLimit(clonedPosition.Symbol);
|
||||
IPosition changedPosition=ClosePositionDialog.Prompt("Close Position",clonedPosition,hasStopLimit,ref deleteStop);
|
||||
if(null==changedPosition) return;
|
||||
CMTTrendModel mmTrendModel=new CMTTrendModel();
|
||||
@@ -1078,7 +1078,7 @@ namespace TradeBlotter.ViewModels
|
||||
MessageBox.Show("Failed to close the position, check log for details.","Close Position");
|
||||
return;
|
||||
}
|
||||
if(deleteStop) PortfolioDA.DeleteStopLimit(changedPosition.Symbol);
|
||||
if(deleteStop) StopLimitDA.DeleteStopLimit(changedPosition.Symbol);
|
||||
String strMessage=String.Format("Closed position for {0}, Purchase Date:{1}, Sell Date{2}, Current Price:{3}, Delete Stop:{4} to {5}. A backup was created.",
|
||||
changedPosition.Symbol,changedPosition.PurchaseDate.ToShortDateString(),changedPosition.SellDate.ToShortDateString(),Utility.FormatCurrency(changedPosition.CurrentPrice),deleteStop,pathFileName);
|
||||
MessageBox.Show(strMessage,"Close Position");
|
||||
@@ -1100,7 +1100,7 @@ namespace TradeBlotter.ViewModels
|
||||
{
|
||||
selectedPosition.TrailingStopLimit=changedPosition.TrailingStopLimit;
|
||||
selectedPosition.LastStopAdjustment=DateTime.Now.Date;
|
||||
StopLimit stopLimit=PortfolioDA.GetStopLimit(changedPosition.Symbol);
|
||||
StopLimit stopLimit=StopLimitDA.GetStopLimit(changedPosition.Symbol);
|
||||
if(null==stopLimit)
|
||||
{
|
||||
stopLimit=new StopLimit();
|
||||
@@ -1109,7 +1109,7 @@ namespace TradeBlotter.ViewModels
|
||||
stopLimit.Shares=changedPosition.Shares;
|
||||
}
|
||||
stopLimit.StopPrice=changedPosition.TrailingStopLimit;
|
||||
PortfolioDA.InsertUpdateStopLimit(stopLimit);
|
||||
StopLimitDA.InsertUpdateStopLimit(stopLimit);
|
||||
}
|
||||
selectedPosition.PurchaseDate=changedPosition.PurchaseDate;
|
||||
selectedPosition.PurchasePrice=changedPosition.PurchasePrice;
|
||||
@@ -1588,7 +1588,7 @@ namespace TradeBlotter.ViewModels
|
||||
initialStopLimit.StopPrice=selectedPosition.InitialStopLimit;
|
||||
initialStopLimit.StopType=StopLimitConstants.STOP_QUOTE;
|
||||
initialStopLimit.EffectiveDate=selectedPosition.PurchaseDate;
|
||||
initialStopLimit.Active=1;
|
||||
// initialStopLimit.Active=1;
|
||||
marketDataModelStopLimits.Add(initialStopLimit);
|
||||
|
||||
foreach(MarketData.Generator.Model.StopLimit stopLimit in stopLimits)
|
||||
@@ -1599,7 +1599,7 @@ namespace TradeBlotter.ViewModels
|
||||
marketDataModelStopLimit.StopPrice=stopLimit.NewStop;
|
||||
marketDataModelStopLimit.StopType=StopLimitConstants.STOP_QUOTE;
|
||||
marketDataModelStopLimit.EffectiveDate=stopLimit.AnalysisDate;
|
||||
marketDataModelStopLimit.Active=1;
|
||||
// marketDataModelStopLimit.Active=1;
|
||||
marketDataModelStopLimits.Add(marketDataModelStopLimit);
|
||||
}
|
||||
return marketDataModelStopLimits;
|
||||
|
||||
Reference in New Issue
Block a user