Commit latest

This commit is contained in:
2025-06-15 20:53:24 -04:00
parent 20d253d50e
commit 244a1f965f
8 changed files with 119 additions and 53 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

View File

@@ -267,14 +267,12 @@ namespace PortfolioManager.ViewModels
base.OnPropertyChanged("InsiderTransactionPointAcquiredMedium");
base.OnPropertyChanged("InsiderTransactionPointAcquiredLarge");
// base.OnPropertyChanged("InsiderTransactionPointMarkersDisposedSmall");
// base.OnPropertyChanged("InsiderTransactionPointMarkersDisposedMedium");
// base.OnPropertyChanged("InsiderTransactionPointMarkersDisposedLarge");
// base.OnPropertyChanged("InsiderTransactionPointMarkersAcquiredSmall");
// base.OnPropertyChanged("InsiderTransactionPointMarkersAcquiredMedium");
// base.OnPropertyChanged("InsiderTransactionPointMarkersAcquiredLarge");
base.OnPropertyChanged("InsiderTransactionPointMarkersDisposedSmall");
base.OnPropertyChanged("InsiderTransactionPointMarkersDisposedMedium");
base.OnPropertyChanged("InsiderTransactionPointMarkersDisposedLarge");
base.OnPropertyChanged("InsiderTransactionPointMarkersAcquiredSmall");
base.OnPropertyChanged("InsiderTransactionPointMarkersAcquiredMedium");
base.OnPropertyChanged("InsiderTransactionPointMarkersAcquiredLarge");
base.OnPropertyChanged("LeastSquares");
}
}
@@ -506,13 +504,13 @@ namespace PortfolioManager.ViewModels
base.OnPropertyChanged("InsiderTransactionPointAcquiredMedium");
base.OnPropertyChanged("InsiderTransactionPointAcquiredLarge");
// base.OnPropertyChanged("InsiderTransactionPointMarkersDisposedSmall");
// base.OnPropertyChanged("InsiderTransactionPointMarkersDisposedMedium");
// base.OnPropertyChanged("InsiderTransactionPointMarkersDisposedLarge");
base.OnPropertyChanged("InsiderTransactionPointMarkersDisposedSmall");
base.OnPropertyChanged("InsiderTransactionPointMarkersDisposedMedium");
base.OnPropertyChanged("InsiderTransactionPointMarkersDisposedLarge");
// base.OnPropertyChanged("InsiderTransactionPointMarkersAcquiredSmall");
// base.OnPropertyChanged("InsiderTransactionPointMarkersAcquiredMedium");
// base.OnPropertyChanged("InsiderTransactionPointMarkersAcquiredLarge");
base.OnPropertyChanged("InsiderTransactionPointMarkersAcquiredSmall");
base.OnPropertyChanged("InsiderTransactionPointMarkersAcquiredMedium");
base.OnPropertyChanged("InsiderTransactionPointMarkersAcquiredLarge");
});
}
else if (eventArgs.PropertyName.Equals("SelectedWatchList"))
@@ -539,7 +537,7 @@ namespace PortfolioManager.ViewModels
}
}
// ************************************************* C O M P O S I T E P R O P E R T I E S ********************************************
// ************************************************* C O M P O S I T E D A T A S O U R C E S ********************************************
public CompositeDataSource K
{
@@ -624,15 +622,6 @@ namespace PortfolioManager.ViewModels
}
}
public IImage TradePointMarkers
{
get
{
if (!showTradeLabels) return null;
return ImageCache.GetInstance().GetImage(ImageCache.ImageType.YellowTriangleUp);
}
}
public CompositeDataSource ZeroPoint
{
get
@@ -642,15 +631,6 @@ namespace PortfolioManager.ViewModels
}
}
public IImage ZeroPointMarkers
{
get
{
if (!showTradeLabels) return null;
return ImageCache.GetInstance().GetImage(ImageCache.ImageType.BlueTriangleUp);
}
}
public CompositeDataSource StopLimits
{
get
@@ -660,15 +640,6 @@ namespace PortfolioManager.ViewModels
}
}
public IImage StopLimitMarkers
{
get
{
if (!showTradeLabels) return null;
return ImageCache.GetInstance().GetImage(ImageCache.ImageType.RedTriangleUp);
}
}
public CompositeDataSource InsiderTransactionPointDisposedSmall
{
get
@@ -721,7 +692,102 @@ namespace PortfolioManager.ViewModels
if (!showInsiderTransactions) return Empty();
return compositeDataSourceInsiderTransactionPointAcquiredLarge;
}
}
}
// ******************************************************** M A R K E R S **************************************************
public IImage StopLimitMarkers
{
get
{
if (!showTradeLabels) return null;
return ImageCache.GetInstance().GetImage(ImageCache.ImageType.RedTriangleUp);
}
}
public IImage ZeroPointMarkers
{
get
{
if (!showTradeLabels) return null;
return ImageCache.GetInstance().GetImage(ImageCache.ImageType.BlueTriangleUp);
}
}
public IImage TradePointMarkers
{
get
{
if (!showTradeLabels) return null;
return ImageCache.GetInstance().GetImage(ImageCache.ImageType.YellowTriangleUp);
}
}
/// <summary>
/// This size is controlled in the XAML
/// </summary>
public IImage InsiderTransactionPointMarkersDisposedSmall
{
get
{
return ImageCache.GetInstance().GetImage(ImageCache.ImageType.RedTriangleDown);
}
}
/// <summary>
/// This size is controlled in the XAML
/// </summary>
public IImage InsiderTransactionPointMarkersDisposedMedium
{
get
{
return ImageCache.GetInstance().GetImage(ImageCache.ImageType.RedTriangleDown);
}
}
/// <summary>
/// This size is controlled in the XAML
/// </summary>
public IImage InsiderTransactionPointMarkersDisposedLarge
{
get
{
return ImageCache.GetInstance().GetImage(ImageCache.ImageType.RedTriangleDown);
}
}
/// <summary>
/// This size is controlled in the XAML
/// </summary>
public IImage InsiderTransactionPointMarkersAcquiredSmall
{
get
{
return ImageCache.GetInstance().GetImage(ImageCache.ImageType.GreenTriangleUp);
}
}
/// <summary>
/// This size is controlled in the XAML
/// </summary>
public IImage InsiderTransactionPointMarkersAcquiredMedium
{
get
{
return ImageCache.GetInstance().GetImage(ImageCache.ImageType.GreenTriangleUp);
}
}
/// <summary>
/// This size is controlled in the XAML
/// </summary>
public IImage InsiderTransactionPointMarkersAcquiredLarge
{
get
{
return ImageCache.GetInstance().GetImage(ImageCache.ImageType.GreenTriangleUp);
}
}
// *********************************************************************************************************************************************
public void CreateCompositeDataSources()

View File

@@ -150,55 +150,55 @@
<mxc:CartesianChart.Series>
<mxc:CartesianSeries Name="TradeMarkersPointsGraph" DataAdapter="{Binding TradePoints.DataAdapter}" >
<mxc:CartesianPointSeriesView MarkerImage="{Binding Path=TradePointMarkers, Mode=OneWay}" ShowInCrosshair="False" MarkerSize="{Binding Path=MarkerSize, Converter={StaticResource OSValueConverter},ConverterParameter=20|.5}"/>
<mxc:CartesianPointSeriesView MarkerImage="{Binding Path=TradePointMarkers, Mode=OneWay}" ShowInCrosshair="False" MarkerSize="{Binding Path=MarkerSize, Converter={StaticResource OSValueConverter},ConverterParameter=25|.5}"/>
</mxc:CartesianSeries>
</mxc:CartesianChart.Series>
<mxc:CartesianChart.Series>
<mxc:CartesianSeries Name="ZeroPointMarkersPointsGraph" DataAdapter="{Binding ZeroPoint.DataAdapter}">
<mxc:CartesianPointSeriesView MarkerImage="{Binding Path=ZeroPointMarkers, Mode=OneWay}" ShowInCrosshair="False" MarkerSize="{Binding Path=MarkerSize, Converter={StaticResource OSValueConverter},ConverterParameter=20|.5}"/>
<mxc:CartesianPointSeriesView MarkerImage="{Binding Path=ZeroPointMarkers, Mode=OneWay}" ShowInCrosshair="False" MarkerSize="{Binding Path=MarkerSize, Converter={StaticResource OSValueConverter},ConverterParameter=25|.5}"/>
</mxc:CartesianSeries>
</mxc:CartesianChart.Series>
<mxc:CartesianChart.Series>
<mxc:CartesianSeries Name="StopLimitMarkersPointsGraph" DataAdapter="{Binding StopLimits.DataAdapter}">
<mxc:CartesianPointSeriesView MarkerImage="{Binding Path=StopLimitMarkers, Mode=OneWay}" ShowInCrosshair="False" MarkerSize="{Binding Path=MarkerSize, Converter={StaticResource OSValueConverter},ConverterParameter=20|.5}"/>
<mxc:CartesianPointSeriesView MarkerImage="{Binding Path=StopLimitMarkers, Mode=OneWay}" ShowInCrosshair="False" MarkerSize="{Binding Path=MarkerSize, Converter={StaticResource OSValueConverter},ConverterParameter=25|.5}"/>
</mxc:CartesianSeries>
</mxc:CartesianChart.Series>
</mxc:CartesianChart.Series>
<mxc:CartesianChart.Series>
<mxc:CartesianSeries Name="InsiderTransactionsPointMarkersPointsGraphDisposedSmall" DataAdapter="{Binding InsiderTransactionPointDisposedSmall.DataAdapter}" >
<mxc:CartesianPointSeriesView ShowInCrosshair="False" Color="red" MarkerSize="10"/>
<mxc:CartesianPointSeriesView MarkerImage="{Binding Path=InsiderTransactionPointMarkersDisposedSmall, Mode=OneWay}" ShowInCrosshair="False" MarkerSize="{Binding Path=MarkerSize, Converter={StaticResource OSValueConverter},ConverterParameter=20|.5}"/>
</mxc:CartesianSeries>
</mxc:CartesianChart.Series>
<mxc:CartesianChart.Series>
<mxc:CartesianSeries Name="InsiderTransactionsPointMarkersPointsGraphDisposedMedium" DataAdapter="{Binding InsiderTransactionPointDisposedMedium.DataAdapter}" >
<mxc:CartesianPointSeriesView ShowInCrosshair="False" Color="red" MarkerSize="20"/>
<mxc:CartesianPointSeriesView MarkerImage="{Binding Path=InsiderTransactionPointMarkersDisposedMedium, Mode=OneWay}" ShowInCrosshair="False" MarkerSize="{Binding Path=MarkerSize, Converter={StaticResource OSValueConverter},ConverterParameter=30|.5}"/>
</mxc:CartesianSeries>
</mxc:CartesianChart.Series>
<mxc:CartesianChart.Series>
<mxc:CartesianSeries Name="InsiderTransactionsPointMarkersPointsGraphDisposedLarge" DataAdapter="{Binding InsiderTransactionPointDisposedLarge.DataAdapter}" >
<mxc:CartesianPointSeriesView ShowInCrosshair="False" Color="red" MarkerSize="30"/>
<mxc:CartesianPointSeriesView MarkerImage="{Binding Path=InsiderTransactionPointMarkersDisposedLarge, Mode=OneWay}" ShowInCrosshair="False" MarkerSize="{Binding Path=MarkerSize, Converter={StaticResource OSValueConverter},ConverterParameter=40|.5}"/>
</mxc:CartesianSeries>
</mxc:CartesianChart.Series>
<mxc:CartesianChart.Series>
<mxc:CartesianSeries Name="InsiderTransactionsPointMarkersPointsGraphAcquiredSmall" DataAdapter="{Binding InsiderTransactionPointAcquiredSmall.DataAdapter}" >
<mxc:CartesianPointSeriesView ShowInCrosshair="False" Color="green" MarkerSize="10"/>
<mxc:CartesianPointSeriesView MarkerImage="{Binding Path=InsiderTransactionPointMarkersAcquiredSmall, Mode=OneWay}" ShowInCrosshair="False" MarkerSize="{Binding Path=MarkerSize, Converter={StaticResource OSValueConverter},ConverterParameter=20|.5}"/>
</mxc:CartesianSeries>
</mxc:CartesianChart.Series>
<mxc:CartesianChart.Series>
<mxc:CartesianSeries Name="InsiderTransactionsPointMarkersPointsGraphAcquiredMedium" DataAdapter="{Binding InsiderTransactionPointAcquiredMedium.DataAdapter}" >
<mxc:CartesianPointSeriesView ShowInCrosshair="False" Color="green" MarkerSize="20"/>
<mxc:CartesianPointSeriesView MarkerImage="{Binding Path=InsiderTransactionPointMarkersAcquiredMedium, Mode=OneWay}" ShowInCrosshair="False" MarkerSize="{Binding Path=MarkerSize, Converter={StaticResource OSValueConverter},ConverterParameter=30|.5}"/>
</mxc:CartesianSeries>
</mxc:CartesianChart.Series>
<mxc:CartesianChart.Series>
<mxc:CartesianSeries Name="InsiderTransactionsPointMarkersPointsGraphAcquiredLarge" DataAdapter="{Binding InsiderTransactionPointAcquiredLarge.DataAdapter}" >
<mxc:CartesianPointSeriesView ShowInCrosshair="False" Color="green" MarkerSize="30"/>
<mxc:CartesianPointSeriesView MarkerImage="{Binding Path=InsiderTransactionPointMarkersAcquiredLarge, Mode=OneWay}" ShowInCrosshair="False" MarkerSize="{Binding Path=MarkerSize, Converter={StaticResource OSValueConverter},ConverterParameter=40|.5}"/>
</mxc:CartesianSeries>
</mxc:CartesianChart.Series>