Changes to support MGSHMomentumView
This commit is contained in:
@@ -28,6 +28,8 @@ using StopLimit=MarketData.MarketDataModel.StopLimit;
|
||||
using TradeBlotter.UIUtils;
|
||||
using MarketData.Generator.Model;
|
||||
using MarketData.Generator.ModelGenerators;
|
||||
using MarketData.Generator.Interface;
|
||||
using TradeBlotter.Extensions;
|
||||
|
||||
namespace TradeBlotter.ViewModels
|
||||
{
|
||||
@@ -950,41 +952,60 @@ namespace TradeBlotter.ViewModels
|
||||
// *************************************************************************************************************************************************************
|
||||
// ********************************************************************** C O M M A N D W O R K E R S P O S I T I O N ****************************************
|
||||
// *************************************************************************************************************************************************************
|
||||
//public void DisplayBollingerBandCommandPosition()
|
||||
//{
|
||||
// String strStopLimits=null;
|
||||
// MarketData.MarketDataModel.StopLimits stopLimits=GetHistoricalStopLimitsMarketDataModel();
|
||||
// StringBuilder sb=new StringBuilder();
|
||||
// if(null!=stopLimits && 0!=stopLimits.Count)
|
||||
// {
|
||||
// sb.Append(",");
|
||||
// NVPCollections nvpCollections=stopLimits.ToNVPCollections();
|
||||
// sb.Append("StopHistoryCount").Append(",").Append(String.Format("{0}",nvpCollections.Count)).Append(",");
|
||||
// for(int index=0;index<nvpCollections.Count;index++)
|
||||
// {
|
||||
// sb.Append(String.Format("StopHistory_{0}",index)).Append(",").Append(nvpCollections[index].ToString());
|
||||
// if(index<nvpCollections.Count-1)sb.Append(",");
|
||||
// }
|
||||
// }
|
||||
// strStopLimits=sb.ToString();
|
||||
// SaveParameters saveParams=null;
|
||||
// if(null!=strStopLimits)
|
||||
// {
|
||||
// sb=new StringBuilder();
|
||||
// sb.Append("Type,TradeBlotter.ViewModels.BollingerBandViewModel,SelectedSymbol,");
|
||||
// sb.Append(selectedPosition.Symbol).Append(",");
|
||||
// sb.Append("SelectedWatchList,{All},SelectedDayCount,");
|
||||
// sb.Append(GetDayCountSelectionForBollingerBands(selectedPosition));
|
||||
// sb.Append(String.IsNullOrEmpty(strStopLimits)?"":strStopLimits);
|
||||
// saveParams=SaveParameters.Parse(sb.ToString());
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// saveParams=SaveParameters.Parse("Type,TradeBlotter.ViewModels.BollingerBandViewModel,SelectedSymbol,"+selectedPosition.Symbol+",SelectedWatchList,{All},SelectedDayCount,90");
|
||||
// }
|
||||
// saveParams.Referer=this;
|
||||
// WorkspaceInstantiator.Invoke(saveParams);
|
||||
//}
|
||||
|
||||
public void DisplayBollingerBandCommandPosition()
|
||||
{
|
||||
String strStopLimits=null;
|
||||
MarketData.MarketDataModel.StopLimits stopLimits=GetHistoricalStopLimitsMarketDataModel();
|
||||
StringBuilder sb=new StringBuilder();
|
||||
if(null!=stopLimits && 0!=stopLimits.Count)
|
||||
{
|
||||
sb.Append(",");
|
||||
NVPCollections nvpCollections=stopLimits.ToNVPCollections();
|
||||
sb.Append("StopHistoryCount").Append(",").Append(String.Format("{0}",nvpCollections.Count)).Append(",");
|
||||
for(int index=0;index<nvpCollections.Count;index++)
|
||||
{
|
||||
sb.Append(String.Format("StopHistory_{0}",index)).Append(",").Append(nvpCollections[index].ToString());
|
||||
if(index<nvpCollections.Count-1)sb.Append(",");
|
||||
}
|
||||
}
|
||||
strStopLimits=sb.ToString();
|
||||
SaveParameters saveParams=null;
|
||||
if(null!=strStopLimits)
|
||||
{
|
||||
sb=new StringBuilder();
|
||||
sb.Append("Type,TradeBlotter.ViewModels.BollingerBandViewModel,SelectedSymbol,");
|
||||
sb.Append(selectedPosition.Symbol).Append(",");
|
||||
sb.Append("SelectedWatchList,{All},SelectedDayCount,");
|
||||
sb.Append(GetDayCountSelectionForBollingerBands(selectedPosition));
|
||||
sb.Append(String.IsNullOrEmpty(strStopLimits)?"":strStopLimits);
|
||||
saveParams=SaveParameters.Parse(sb.ToString());
|
||||
}
|
||||
else
|
||||
{
|
||||
saveParams=SaveParameters.Parse("Type,TradeBlotter.ViewModels.BollingerBandViewModel,SelectedSymbol,"+selectedPosition.Symbol+",SelectedWatchList,{All},SelectedDayCount,90");
|
||||
}
|
||||
MarketData.MarketDataModel.StopLimits stopLimits = GetHistoricalStopLimitsMarketDataModel();
|
||||
|
||||
StringBuilder sb = new StringBuilder();
|
||||
SaveParameters saveParams = null;
|
||||
sb = new StringBuilder();
|
||||
sb.Append("Type,TradeBlotter.ViewModels.BollingerBandViewModel,SelectedSymbol,");
|
||||
sb.Append(selectedPosition.Symbol).Append(",");
|
||||
sb.Append("SelectedWatchList,{All},SelectedDayCount,");
|
||||
sb.Append(GetDayCountSelectionForBollingerBands(selectedPosition));
|
||||
saveParams = SaveParameters.Parse(sb.ToString());
|
||||
SaveParameters stopLimitParams = StopLimitsExtensions.FromStopLimits(stopLimits);
|
||||
saveParams.AddRange(stopLimitParams);
|
||||
saveParams.Referer=this;
|
||||
WorkspaceInstantiator.Invoke(saveParams);
|
||||
}
|
||||
|
||||
private int GetDayCountSelectionForBollingerBands(CMTPositionModel selectedPosition)
|
||||
{
|
||||
DateGenerator dateGenerator=new DateGenerator();
|
||||
@@ -1061,10 +1082,11 @@ namespace TradeBlotter.ViewModels
|
||||
MessageBox.Show(strMessage,"Close Position");
|
||||
LoadSessionFile();
|
||||
}
|
||||
|
||||
public void EditPositionCommand(CMTPositionModel selectedPosition)
|
||||
{
|
||||
Position clonedPosition=Position.Clone(selectedPosition.Position);
|
||||
Position changedPosition=CMTTrendModelEditPositionDialog.Prompt("Edit Position",clonedPosition);
|
||||
IPosition changedPosition=EditPositionDialog.Prompt("Edit Position",clonedPosition);
|
||||
if(null==changedPosition) return;
|
||||
CMTTrendModel mmTrendModel=new CMTTrendModel();
|
||||
if(!mmTrendModel.EditPosition(changedPosition.Symbol,changedPosition.PurchaseDate,changedPosition.PurchasePrice,changedPosition.InitialStopLimit,changedPosition.TrailingStopLimit,pathFileName))
|
||||
@@ -1515,7 +1537,9 @@ namespace TradeBlotter.ViewModels
|
||||
if(null==sessionParams||null==selectedPosition) return null;
|
||||
DateGenerator dateGenerator=new DateGenerator();
|
||||
MarketData.MarketDataModel.StopLimits marketDataModelStopLimits=new MarketData.MarketDataModel.StopLimits();
|
||||
MarketData.Generator.Model.StopLimits stopLimits=new MarketData.Generator.Model.StopLimits((from MarketData.Generator.Model.StopLimit stopLimit in sessionParams.StopLimits where stopLimit.Symbol.Equals(selectedPosition.Symbol) select stopLimit).OrderByDescending(x => x.AnalysisDate).ToList());
|
||||
MarketData.Generator.Model.StopLimits stopLimits=new MarketData.Generator.Model.StopLimits(
|
||||
(from MarketData.Generator.Model.StopLimit stopLimit in sessionParams.StopLimits where stopLimit.Symbol.Equals(selectedPosition.Symbol)
|
||||
select stopLimit).OrderByDescending(x => x.AnalysisDate).ToList());
|
||||
|
||||
MarketData.MarketDataModel.StopLimit initialStopLimit=new MarketData.MarketDataModel.StopLimit();
|
||||
initialStopLimit.Symbol=selectedPosition.Symbol;
|
||||
|
||||
Reference in New Issue
Block a user