Added some fields, removed some others.
This commit is contained in:
@@ -77,12 +77,9 @@ namespace TradeBlotter.Model
|
|||||||
CumReturn252=position.CumReturn252;
|
CumReturn252=position.CumReturn252;
|
||||||
IDIndicator=position.IDIndicator;
|
IDIndicator=position.IDIndicator;
|
||||||
Score=position.Score;
|
Score=position.Score;
|
||||||
MaxDrawdown=position.MaxDrawdown;
|
|
||||||
MaxUpside=position.MaxUpside;
|
|
||||||
Velocity=position.Velocity;
|
Velocity=position.Velocity;
|
||||||
PE=position.PE;
|
PE=position.PE;
|
||||||
Beta=position.Beta;
|
Beta=position.Beta;
|
||||||
ZacksRank=position.ZacksRank;
|
|
||||||
InitialStopLimit=position.InitialStopLimit;
|
InitialStopLimit=position.InitialStopLimit;
|
||||||
TrailingStopLimit=position.TrailingStopLimit;
|
TrailingStopLimit=position.TrailingStopLimit;
|
||||||
LastStopAdjustment=position.LastStopAdjustment;
|
LastStopAdjustment=position.LastStopAdjustment;
|
||||||
@@ -103,12 +100,9 @@ namespace TradeBlotter.Model
|
|||||||
CumReturn252=position.CumReturn252;
|
CumReturn252=position.CumReturn252;
|
||||||
IDIndicator=position.IDIndicator;
|
IDIndicator=position.IDIndicator;
|
||||||
Score=position.Score;
|
Score=position.Score;
|
||||||
MaxDrawdown=position.MaxDrawdown;
|
|
||||||
MaxUpside=position.MaxUpside;
|
|
||||||
Velocity=position.Velocity;
|
Velocity=position.Velocity;
|
||||||
PE=position.PE;
|
PE=position.PE;
|
||||||
Beta=position.Beta;
|
Beta=position.Beta;
|
||||||
ZacksRank=position.ZacksRank;
|
|
||||||
InitialStopLimit=position.InitialStopLimit;
|
InitialStopLimit=position.InitialStopLimit;
|
||||||
TrailingStopLimit=position.TrailingStopLimit;
|
TrailingStopLimit=position.TrailingStopLimit;
|
||||||
LastStopAdjustment=position.LastStopAdjustment;
|
LastStopAdjustment=position.LastStopAdjustment;
|
||||||
@@ -133,12 +127,9 @@ namespace TradeBlotter.Model
|
|||||||
CumReturn252=position.CumReturn252;
|
CumReturn252=position.CumReturn252;
|
||||||
IDIndicator=position.IDIndicator;
|
IDIndicator=position.IDIndicator;
|
||||||
Score=position.Score;
|
Score=position.Score;
|
||||||
MaxDrawdown=position.MaxDrawdown;
|
|
||||||
MaxUpside=position.MaxUpside;
|
|
||||||
Velocity=position.Velocity;
|
Velocity=position.Velocity;
|
||||||
PE=position.PE;
|
PE=position.PE;
|
||||||
Beta=position.Beta;
|
Beta=position.Beta;
|
||||||
ZacksRank=position.ZacksRank;
|
|
||||||
InitialStopLimit=position.InitialStopLimit;
|
InitialStopLimit=position.InitialStopLimit;
|
||||||
TrailingStopLimit=position.TrailingStopLimit;
|
TrailingStopLimit=position.TrailingStopLimit;
|
||||||
LastStopAdjustment=position.LastStopAdjustment;
|
LastStopAdjustment=position.LastStopAdjustment;
|
||||||
@@ -281,16 +272,6 @@ namespace TradeBlotter.Model
|
|||||||
get { return Utility.FormatNumber((position.CurrentPrice - position.PurchasePrice) / (position.PurchasePrice - position.InitialStopLimit), 2, false) + "R"; } // always based on original position risk
|
get { return Utility.FormatNumber((position.CurrentPrice - position.PurchasePrice) / (position.PurchasePrice - position.InitialStopLimit), 2, false) + "R"; } // always based on original position risk
|
||||||
}
|
}
|
||||||
|
|
||||||
//public Brush RMultipleAsStringColor
|
|
||||||
//{
|
|
||||||
// get
|
|
||||||
// {
|
|
||||||
// if (!IsActivePosition) return BrushCollection.GetContextBrush(BrushCollection.BrushColor.Blue);
|
|
||||||
// return BrushCollection.GetContextBrush(BrushCollection.BrushColor.Black);
|
|
||||||
// }
|
|
||||||
//}
|
|
||||||
|
|
||||||
|
|
||||||
public double RMultiple
|
public double RMultiple
|
||||||
{
|
{
|
||||||
get{return (position.CurrentPrice-position.PurchasePrice)/(position.PurchasePrice-position.InitialStopLimit);} // always based on original position risk
|
get{return (position.CurrentPrice-position.PurchasePrice)/(position.PurchasePrice-position.InitialStopLimit);} // always based on original position risk
|
||||||
@@ -320,7 +301,32 @@ namespace TradeBlotter.Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
// ************************************************************************************************************************************
|
// ************************************************************************************************************************************
|
||||||
|
public int DaysSinceLastStopAdjustment
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
if(!IsActivePosition)return int.MinValue;
|
||||||
|
DateGenerator dateGenerator=new DateGenerator();
|
||||||
|
DateTime today=DateTime.Now;
|
||||||
|
int daysSinceLastStopAdjustment=int.MinValue;
|
||||||
|
if(Utility.IsEpoch(position.LastStopAdjustment)) daysSinceLastStopAdjustment=dateGenerator.DaysBetweenActual(today,position.PurchaseDate);
|
||||||
|
else daysSinceLastStopAdjustment=dateGenerator.DaysBetweenActual(today,position.LastStopAdjustment);
|
||||||
|
return daysSinceLastStopAdjustment;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public Brush DaysSinceLastStopAdjustmentColor
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
if(!IsActivePosition) return BrushCollection.GetContextBrush(BrushCollection.BrushColor.Blue);
|
||||||
|
int daysSinceLastStopAdjustment=DaysSinceLastStopAdjustment;
|
||||||
|
if(int.MinValue.Equals(daysSinceLastStopAdjustment))return BrushCollection.GetContextBrush(BrushCollection.BrushColor.Blue);
|
||||||
|
if(daysSinceLastStopAdjustment>=90) return BrushCollection.GetContextBrush(BrushCollection.BrushColor.Red);
|
||||||
|
else if(daysSinceLastStopAdjustment>=60) return BrushCollection.GetContextBrush(BrushCollection.BrushColor.Red); // I made them both red because yellow and purple looked horrible
|
||||||
|
return BrushCollection.GetContextBrush(BrushCollection.BrushColor.Green);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public double Shares
|
public double Shares
|
||||||
{
|
{
|
||||||
@@ -490,18 +496,6 @@ namespace TradeBlotter.Model
|
|||||||
set { position.Score=value; base.OnPropertyChanged("Score"); }
|
set { position.Score=value; base.OnPropertyChanged("Score"); }
|
||||||
}
|
}
|
||||||
|
|
||||||
public double MaxDrawdown
|
|
||||||
{
|
|
||||||
get{return position.MaxDrawdown;}
|
|
||||||
set{position.MaxDrawdown=value;base.OnPropertyChanged("MaxDrawdown");}
|
|
||||||
}
|
|
||||||
|
|
||||||
public double MaxUpside
|
|
||||||
{
|
|
||||||
get{return position.MaxUpside;}
|
|
||||||
set{position.MaxUpside=value;base.OnPropertyChanged("MaxUpside");}
|
|
||||||
}
|
|
||||||
|
|
||||||
public double Velocity
|
public double Velocity
|
||||||
{
|
{
|
||||||
get{return position.Velocity;}
|
get{return position.Velocity;}
|
||||||
@@ -514,12 +508,6 @@ namespace TradeBlotter.Model
|
|||||||
set{position.PE=value;base.OnPropertyChanged("PE");}
|
set{position.PE=value;base.OnPropertyChanged("PE");}
|
||||||
}
|
}
|
||||||
|
|
||||||
public String ZacksRank
|
|
||||||
{
|
|
||||||
get {return position.ZacksRank;}
|
|
||||||
set{position.ZacksRank=value;base.OnPropertyChanged("ZacksRank");}
|
|
||||||
}
|
|
||||||
|
|
||||||
public double Beta
|
public double Beta
|
||||||
{
|
{
|
||||||
get{return position.Beta;}
|
get{return position.Beta;}
|
||||||
|
|||||||
Reference in New Issue
Block a user