Update of /cvsroot/quantproject/QuantProject/b3_Data/DataTables
In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv30608/b3_Data/DataTables
Modified Files:
Quotes.cs
Log Message:
Added new constructor to the SelectorByLiquidity class:
now it is possible to filter tickers by a given min volume value also when selection is performed on a given set (dataTable) of tickers
Index: Quotes.cs
===================================================================
RCS file: /cvsroot/quantproject/QuantProject/b3_Data/DataTables/Quotes.cs,v
retrieving revision 1.30
retrieving revision 1.31
diff -C2 -d -r1.30 -r1.31
*** Quotes.cs 3 Aug 2006 21:21:34 -0000 1.30
--- Quotes.cs 17 Sep 2006 21:36:09 -0000 1.31
***************
*** 111,115 ****
/// returns most liquid tickers within the given set of tickers
/// </summary>
-
public static DataTable GetTickersByLiquidity( bool orderByASC,
DataTable setOfTickers,
--- 111,114 ----
***************
*** 133,136 ****
--- 132,171 ----
/// <summary>
+ /// returns most liquid tickers with the given min volume
+ /// within the given set of tickers
+ /// </summary>
+ public static DataTable GetTickersByLiquidity( bool orderByASC,
+ DataTable setOfTickers,
+ DateTime firstQuoteDate,
+ DateTime lastQuoteDate,
+ long minVolume,
+ long maxNumOfReturnedTickers)
+ {
+ if(!setOfTickers.Columns.Contains("AverageTradedValue"))
+ setOfTickers.Columns.Add("AverageTradedValue", System.Type.GetType("System.Double"));
+ if(!setOfTickers.Columns.Contains("AverageTradedVolume"))
+ setOfTickers.Columns.Add("AverageTradedVolume", System.Type.GetType("System.Int64"));
+
+ foreach(DataRow row in setOfTickers.Rows)
+ {
+ row["AverageTradedValue"] =
+ QuantProject.DataAccess.Tables.Quotes.GetAverageTradedValue((string)row[0],
+ firstQuoteDate,
+ lastQuoteDate);
+ row["AverageTradedVolume"] =
+ QuantProject.DataAccess.Tables.Quotes.GetAverageTradedVolume((string)row[0],
+ firstQuoteDate,
+ lastQuoteDate);
+ }
+ DataTable getMostLiquidTicker = ExtendedDataTable.CopyAndSort(setOfTickers,
+ "AverageTradedVolume>" +
+ minVolume.ToString(),
+ "AverageTradedValue",
+ orderByASC);
+ ExtendedDataTable.DeleteRows(getMostLiquidTicker, maxNumOfReturnedTickers);
+ return getMostLiquidTicker;
+ }
+
+ /// <summary>
/// returns tickers ordered by volatility computed with Standard deviation of adjusted
/// close to close ratio, within the given set of tickers
|