Release Notes#
Release v0.1.16#
New Features#
map test using linearmodels package by @rushilg99 in PR #1678
Change preferred sorting order for standard QDF by @Magnus167 in PR #1695
Adding
ax_hline
&ax_vline
tomsv.LinePlot
by @Magnus167 in PR #1696Uncomment main script in naive pnl by @sandresen1 in PR #1698
Add single_scatter argument in reg_scatter, also implement bug fixes and format issues in reg_scatter by @sandresen1 in PR #1703
Allow for renaming and reindexing of single statistic table by @sandresen1 in PR #1705
Add dictionary argument to multiple_relations_table to allow for labelling of xcats and rets and sorting by @sandresen1 in PR #1707
Change how default size works in reg_scatter by @sandresen1 in PR #1709
Additons to evaluate_pnls by @sandresen1 in PR #1710
Consistency score for naive PnL by @rushilg99 in PR #1713
Change order of evaluate_pnl table by @sandresen1 in PR #1717
Add readme to signal sub package by @sandresen1 in PR #1718
Remove unused imports by @sandresen1 in PR #1719
Bugfixes#
Remove ticker column from the list of metric_cols by @sandresen1 in PR #1694
Fix error in create_result_df concatenation and add type checks and unit test by @sandresen1 in PR #1697
Fix error when cid used as benchmark return in return beta isn’t used as a cid in benchmark return and xcat is xcat_hedge by @sandresen1 in PR #1704
Fix negation on signals in Signal Return Relations by @sandresen1 in PR #1712
Change label in evaluate_pnl by @sandresen1 in PR #1714
Fix multiple pnl cols by @sandresen1 in PR #1715
Change typing by @sandresen1 in PR #1724
Full Changelog: v0.1.15←v0.1.16
Release v0.1.15#
New Features#
Add sign and time weighted regressors by @emhbrine in PR #1669
Change docstring in category relations to correctly type and describe prob_est by @sandresen1 in PR #1679
Drop duplicates in
standardise_dataframe()
by @Magnus167 in PR #1681Adding unittests for
msm.utils.apply_slip()
by @Magnus167 in PR #1682Deprecated old documentation site by @Magnus167 in PR #1683
Increasing page size for
DQ.get_catalogue()
by @Magnus167 in PR #1685Add option to specify an alternative oauth method by @sandresen1 in PR #1686
Bugfixes#
Type check for cids in Signal return relations by @sandresen1 in PR #1677
df.reset_index()
on return inmsm.utils.apply_slip()
by @Magnus167 in PR #1684
Full Changelog: v0.1.14←v0.1.15
Release v0.1.14#
New Features#
Add error and warnings when using valid Dataquery credentials with no JPMAQS entitlements by @sandresen1 in PR #1653
Optimise speed and memory usage of reduce_df by @sandresen1 in PR #1656
Optimise both memory and speed usage of update_tickers by @sandresen1 in PR #1657
Add unit tests to test for preservation of dataframe object outside the scope of the utility functions by @sandresen1 in PR #1662
Run notebooks using AWS ECS Fargate by @sandresen1 in PR #1665
Add external function capability to panel_calculator to allow for libraries that aren’t in the scope of panel_calculator by @sandresen1 in PR #1668
Removes copying of dataframe at the beginning of instantiation that isn’t used after by @sandresen1 in PR #1670
Bugfixes#
Fix occurence in panel calculator of when single cid is specified by @sandresen1 in PR #1463
apply_slip()
raising aSettingWithCopyWarning
by @Magnus167 in PR #1651Correct beta hedging order of OLS regression by @lsimonsen in PR #1666
Full Changelog: v0.1.13←v0.1.14
Release v0.1.13#
New Features#
Refining CodeCov on matrix testing by @Magnus167 in PR #1610
Refactor
qdf_to_ticker_df
by @Magnus167 in PR #1613Refactoring
update_df()
&update_tickers()
by @Magnus167 in PR #1623Refactor
request_wrapper
by @Magnus167 in PR #1624Adding
Timer
class by @lsimonsen in PR #1626get_sops()
- get starts-of-periods by @Magnus167 in PR #1631retraining pause, warnings, docs update, concurrent training by @rushilg99 in PR #1641
Bugfixes#
Fix spelling and grammatical errors in readme by @sandresen1 in PR #1625
Fix slip so it is only applied to the target category by @sandresen1 in PR #1638
Fixing bug in
FacetPlot.lineplot()
by @Magnus167 in PR #1639Fix coverage report being the same name for different python versions by @sandresen1 in PR #1647
Full Changelog: v0.1.12←v0.1.13
Release v0.1.12#
New Features#
Removing
msm.types.Numeric
by @Magnus167 in PR #1593Add functionality to utilise log bucket to the notebook runner by @sandresen1 in PR #1601
Use
_map_to_business_day_frequency
inget_eops
by @Magnus167 in PR #1608
Bugfixes#
Fix background colour changing dependent on previous plots by @sandresen1 in PR #1602
Fix filtering bug in notebook runner by @sandresen1 in PR #1606
Full Changelog: v0.1.11←v0.1.12
Release v0.1.11#
New Features#
Adding
download_to_disk()
functionality toJPMaQSDownload
by @Magnus167 in PR #1557Design change for changing CV split numbers by @rushilg99 in PR #1568
Pretty print for
msm.missing_in_df()
by @Magnus167 in PR #1570Add Bespoke Metric functionality to Signal Return Relations, optimise multiple_relations_table and deprecate older functions in the sub-package by @sandresen1 in PR #1573
Restyling of coefficient stacked bar plot by @rushilg99 in PR #1577
Add kwargs for seaborn to corr matrix by @emhbrine in PR #1579
Divide each subpackage’s unittests into a matrix by @Magnus167 in PR #1584
Fix to colour coding of the stacked bar plot by @rushilg99 in PR #1585
Remove self hosted runner off package by @sandresen1 in PR #1586
Main←Test, for v0.1.11 by @Magnus167 in PR #1588
Bugfixes#
make_relative_value
, fixing type-hints by @Magnus167 in PR #1567Add check for empty dataframes in
msp.correl_matrix()
by @Magnus167 in PR #1572Fixing order of signs in
linear_composite(sign=...)
by @Magnus167 in PR #1576Handling edge-case in
missing_in_df()
by @Magnus167 in PR #1589
Full Changelog: v0.1.10←v0.1.11
Release v0.1.10#
New Features#
Add Dictionary type for xcat labels in plot pnls by @sandresen1 in PR #1558
enet selector by @rushilg99 in PR #1559
Bugfixes#
Bump minimum
scikit-learn
version to 1.2.2 by @Magnus167 in PR #1540CategoryRelations
docstrings by @Magnus167 in PR #1541Fix connection error in notebook runner by @sandresen1 in PR #1547
Full Changelog: v0.1.9←v0.1.10
Release v0.1.9#
New Features#
Signal Optimizer explainability by @rushilg99 in PR #1472
Add
TOKEN_EXPIRY_BUFFER
todataquery.Oauth
by @Magnus167 in PR #1534
Bugfixes#
Fix variable name in
msv.timelines()
function by @Magnus167 in PR #1518get_eops
- fixdates=None
behaviour by @Magnus167 in PR #1523Revert “Bugfix:
get_eops
- fixdates=None
behaviour” by @Magnus167 in PR #1524Dates behaviour in
get_eops()
by @Magnus167 in PR #1525Revert “Feature: Add
blacklist
parameter toview_timelines()
/msv.timelines()
” by @Magnus167 in PR #1532
Full Changelog: v0.1.8←v0.1.9
Release v0.1.8#
New Features#
Notebook Runner workflow by @Magnus167 in PR #1432
Workflow for notebook runner by @Magnus167 in PR #1433
Change argument name of multiple_reg_scatter to match reg_scatter by @sandresen1 in PR #1503
Add Workflow that runs all notebooks by @sandresen1 in PR #1506
Add
blacklist
parameter toview_timelines()
/msv.timelines()
by @Magnus167 in PR #1509
Bugfixes#
Set apply util, raise_error to false so it doesn’t fail if cross sections don’t exist by @sandresen1 in PR #1507
Full Changelog: v0.1.7←v0.1.8
Release v0.1.7#
Bugfixes#
Fix bug on logic of communal sample period by @sandresen1 in PR #1500
Full Changelog: v0.1.6←v0.1.7
Release v0.1.6#
New Features#
AUC and Macrosynergy panel test p-value statistics added to signal return relations by @sandresen1 in PR #1376
Multiple Reg Scatter by @sandresen1 in PR #1453
create copy of scoring dictionary instead of manipulating the users’ by @rushilg99 in PR #1455
Refactor
macrosynergy.download
subpackage by @Magnus167 in PR #1464View Timelines by @sandresen1 in PR #1473
Adjust coef box fontsize by @sandresen1 in PR #1475
Parameter formatting in docstrings by @Magnus167 in PR #1483
function to display joint signal vs return & PnL statistics by @rushilg99 in PR #1487
models_heatmap fix when only one model is selected by @rushilg99 in PR #1488
Bugfixes#
Remove debug timer from facetplot by @sandresen1 in PR #1476
added set_params method to all linear weighted models by @rushilg99 in PR #1477
Minor change to
historic_vol
unittests by @Magnus167 in PR #1478JPMaQSDownload
, adding more log statements by @Magnus167 in PR #1484Fix indexing error when cumulative sum in view timelines is called by @sandresen1 in PR #1486
Set default position of legend to be outside the plot by @sandresen1 in PR #1492
Change legend loc default by @sandresen1 in PR #1493
Full Changelog: v0.1.5←v0.1.6
Release v0.1.5#
New Features#
Extending type-hinting functionality of
QuantamentalDataFrame
to subclasspd.DataFrame
by @Magnus167 in PR #1264Fix
datetime.datetime.utcnow()
usage by @Magnus167 in PR #1393Docs, Elastic Search by @Magnus167 in PR #1429
Optimize dataframe conversion in
JPMaQSDownload()
by @Magnus167 in PR #1442LAD linear regressor with a positive restriction option by @rushilg99 in PR #1443
Sign- and Time- weighted LAD linear regression models by @rushilg99 in PR #1447
Add unit tests for VintageData class by @Magnus167 in PR #1448
Signal optimiser edge case handling for no model selected + blacklisted country not in the dataframe by @rushilg99 in PR #1452
Bugfixes#
Revert “Feature: Speed up view_timelines” by @sandresen1 in PR #1423
Remove deprecated
msm.DataQueryInterface
class and unittest by @Magnus167 in PR #1426Update
datetime.utcnow()
usage to usetimezone.utc
by @Magnus167 in PR #1428Correct logging level for DQ paginated responses by @Magnus167 in PR #1439
Fix QDF column names in docstrings by @Magnus167 in PR #1444
Fix formatting issue release_notes.py by @Magnus167 in PR #1445
Added reversible mapping for
_map_to_business_day_frequency
by @Magnus167 in PR #1446Fix
JPMaQS.check_connection()
calls and delay param by @Magnus167 in PR #1457missing cids from linear composite are correctly removed by @sandresen1 in PR #1461
Full Changelog: v0.1.4←v0.1.5
Release v0.1.4#
New Features#
Updating delay param code by @Magnus167 in PR #1412
Xcat aggregation is performed if new_xcat name is declared by @sandresen1 in PR #1414
Bugfixes#
Fix artifact upload having the incorrect versioning with deployment to github pages by @sandresen1 in PR #1411
Fix how update tickers works and fix errors caused if using pandas v2.2 by @sandresen1 in PR #1413
Fix error thrown when ncols is specified in reg_scatter by @sandresen1 in PR #1415
Full Changelog: v0.1.3←v0.1.4
Release v0.1.3#
New Features#
Remove deprecated code and documentation for
macrosynergy.dataquery
by @Magnus167 in PR #1394Add references to subpackage README.md files by @Magnus167 in PR #1395
time- & sign- weighted least squares by @rushilg99 in PR #1396
Bugfixes#
Add permissions to PyPi Workflow by @sandresen1 in PR #1391
Revert “Docs: Update subpackage READMEs and generate documentation” by @sandresen1 in PR #1398
Full Changelog: v0.1.2←v0.1.3
Release v0.1.2#
New Features#
Sign- and time-weighted regression models by @rushilg99 in PR #1365
signal optimiser unit tests, error handling and rolling option by @rushilg99 in PR #1373
Add ncol argument to reg_scatter by @sandresen1 in PR #1380
Performance metric unit tests by @rushilg99 in PR #1383
Splitter visualisation tests by @rushilg99 in PR #1384
Bugfixes#
Adding ‘build’ flag to RTD.yml by @Magnus167 in PR #1375
Full Changelog: v0.1.1←v0.1.2
Release v0.1.1#
New Features#
Change unittests matrix to run only on
main
branch by @Magnus167 in PR #1350Update publish trigger for docs-site by @Magnus167 in PR #1354
LassoSelector no feature selected check by @rushilg99 in PR #1355
Sorting release notes as Features & Bugfixes by @Magnus167 in PR #1359
vectorize expanding mean in
make_zn_scores
by @emhbrine in PR #1366
Bugfixes#
Update logo URL in JPB docs site by @Magnus167 in PR #1342
Change legend location to appear below the plot to prevent squashing of the graph and stop overwriting of the variable legend_loc by @sandresen1 in PR #1349
Parameter’s values weren’t being used to adjust the formatting of the timeline by @sandresen1 in PR #1353
Fix formatting issues in Usage Examples by @Magnus167 in PR #1358
Change to legend so it is in the same place with respect to the x labels as a default by @sandresen1 in PR #1360
Change palette so legend colour matches scatter plot colour by @sandresen1 in PR #1363
Cross-Sectional mean is only interpreted across cids specified instead of globally across dataframe by @sandresen1 in PR #1367
Full Changelog: v0.1.0←v0.1.1
Release v0.1.0#
New Features#
Updating Docs site - Sphinx by @Magnus167 in PR #1289
learning subpackage unit tests + docs changes by @rushilg99 in PR #1297
blacklisting fix for multiple periods of same xs + slicing by @rushilg99 in PR #1307
Make heatmap more aesthetically pleasing by @sandresen1 in PR #1309
removed experimental notices by @rushilg99 in PR #1317
Added check for concentrated zero predictions for MAP test by @rushilg99 in PR #1325
more learning unit tests by @rushilg99 in PR #1326
ZN Score neutral level can now be a number by @sandresen1 in PR #1329
Reformatting of files and removing unused imports by @sandresen1 in PR #1330
removed experimental notice for learning + docs changes by @rushilg99 in PR #1337
Bugfixes#
Reverts negation of signal on instantiation of Signal Return Relations by @sandresen1 in PR #1310
Title fontsize specified is used in plot pnl by @sandresen1 in PR #1312
Removes duplicate frequencies from signal returns without reordering the list by @sandresen1 in PR #1314
Change docstring to stop bugged formatting on docs site by @sandresen1 in PR #1331
Full Changelog: v0.0.51←v0.1.0
Release v0.0.52#
New Features#
learning subpackage unit tests + docs changes by @rushilg99 in PR #1297
blacklisting fix for multiple periods of same xs + slicing by @rushilg99 in PR #1307
Make heatmap more aesthetically pleasing by @sandresen1 in PR #1309
removed experimental notices by @rushilg99 in PR #1317
Bugfixes#
Reverts negation of signal on instantiation of Signal Return Relations by @sandresen1 in PR #1310
Title fontsize specified is used in plot pnl by @sandresen1 in PR #1312
Removes duplicate frequencies from signal returns without reordering the list by @sandresen1 in PR #1314
Full Changelog: v0.0.51←v0.0.52
Release v0.0.51#
New Features#
Add functionality to specify feature and return signal in correlation bars by @sandresen1 in PR #1292
Add unit tests and fix small bug by @sandresen1 in PR #1293
Add extra argumentss to accuracy_bars by @sandresen1 in PR #1294
Updating
actions/checkout
tov4
by @Magnus167 in PR #1295renaming avgnormftrtransformer by @rushilg99 in PR #1296
blacklisting for signal optimiser by @rushilg99 in PR #1299
Optimise Single Statistic Table by @sandresen1 in PR #1300
feature averager by @rushilg99 in PR #1302
Bugfixes#
Remove duplicate frequencies, if defined in Signal Return Relations by @sandresen1 in PR #1290
Ensure negation of signals is reverted by @sandresen1 in PR #1291
Fix bug where lineplot plotted xcats in alphabetical order instead of specified order by @sandresen1 in PR #1298
Full Changelog: v0.0.50←v0.0.51
Release v0.0.50#
New Features#
Refactoring
historic_vol()
by @Magnus167 in PR #1247Remove old group-id from
DataQueryInterface.get_catalogue()
by @Magnus167 in PR #1249reordered learning submodule constructor by @rushilg99 in PR #1255
added
title_fontsize
arg toSignalReturnRelations
plotting methods by @Magnus167 in PR #1259type and value checks for transformers + minor refactoring by @rushilg99 in PR #1262
Out of sample signal optimiser + new transformers + new predictors by @rushilg99 in PR #1266
Added logic to sort DF from
JPMaQSDownload
by @Magnus167 in PR #1268Set rounding for statistic table heatmap by @sandresen1 in PR #1270
Refactor panel calculator by @sandresen1 in PR #1273
mapselector now returns zeros when no features are significant by @rushilg99 in PR #1274
Naive predictor class published by @rushilg99 in PR #1275
Add small typing to panel calculator by @sandresen1 in PR #1276
Small refactor/reformat to make_zn_scores by @sandresen1 in PR #1279
refactor return beta by @sandresen1 in PR #1281
Add label for cs mean in view_timelines by @sandresen1 in PR #1282
Bugfixes#
Removes incorrect assert from update_df and add more robust tests by @sandresen1 in PR #1250
Allows QDF Type to be an empty dataframe by @sandresen1 in PR #1257
When cross sections intersections exclusively across signals are empty the communal sample doesn’t index from the dataframe by @sandresen1 in PR #1261
Seaborn version/Missing heatmap annotations by @Magnus167 in PR #1269
Fix typing error which declares a tuple by @sandresen1 in PR #1280
Full Changelog: v0.0.49←v0.0.50
Release v0.0.49#
New Features#
Adaptive signal generation from ML predictions by @rushilg99 in PR #1223
Deprecating singular arguments (ret, sig, freq, agg_sig and rival_sigs) in Signal Return Relations by @sandresen1 in PR #1235
Add option for custom title font size in
NaivePNL.plot_pnls()
function by @Magnus167 in PR #1237
Bugfixes#
Remove single character variables to prevent linting from failing by @sandresen1 in PR #1236
Make assertion error in
update_df
more informative by @sandresen1 in PR #1240
Full Changelog: v0.0.48←v0.0.49
Release v0.0.48#
New Features#
Reformat docstring in signal returns by @sandresen1 in PR #1224
Consolidate Signal Return Relations and Signals Returns into one single class by @sandresen1 in PR #1227
Bugfixes#
Required version of matplotlib is now at least 3.6.0 to avoid runtime error when declaring title in visuals by @sandresen1 in PR #1225
Full Changelog: v0.0.47←v0.0.48
Release v0.0.47#
New Features#
Lasso and MAP feature selection + Z score signal creation by @rushilg99 in PR #1176
Show 10 slowest tests in test output by @sandresen1 in PR #1191
Added README for
macrosynergy.learning
by @rushilg99 in PR #1192Remove expanding_statistics.py & refactor math.py by @sandresen1 in PR #1195
function to translate test predictions into Naive PnLs by @rushilg99 in PR #1198
Added cids to constructor of Signals Returns by @sandresen1 in PR #1200
Add warning to when cids specified in Signal Base are not in the reduced dataframe by @sandresen1 in PR #1201
Consolidate cids into signal base by @sandresen1 in PR #1204
Refactoring of Signals Directory by @sandresen1 in PR #1205
Refactoring Converge Row by @sandresen1 in PR #1206
return self in transformer fit + dataframe in benchmark transformation by @rushilg99 in PR #1208
Bugfixes#
Fixed bug where cids is declared incorrectly in output_table by @sandresen1 in PR #1199
Add context manager to correlation matrix plotting by @Magnus167 in PR #1211
Add legend location and bbox args to
view_ranges()
by @Magnus167 in PR #1212
Full Changelog: v0.0.46←v0.0.47
Release v0.0.46#
New Features#
Add a Required Review Directive to workflow by @sandresen1 in PR #1120
Consolidating
msm.simulate_*
functions by @Magnus167 in PR #1132Code Coverage excludes code that won’t be executed by @sandresen1 in PR #1144
Added more unit tests for category_relations by @sandresen1 in PR #1147
Adding
granger_causality_test()
by @Magnus167 in PR #1148Sub-package for
msm.utils
by @Magnus167 in PR #1149added a range of non-standard scikit-learn performance metrics to ms.learning by @rushilg99 in PR #1164
Remove unnecessary copying of dataframe by @sandresen1 in PR #1165
Add new tests for signal directory by @sandresen1 in PR #1169
corrected type check for multi-index index format for returns in metric.py by @rushilg99 in PR #1172
Add more unit tests to Signal Return Relations by @sandresen1 in PR #1173
Add test to naive_pnl and prevent tests from outputting plots directly by @sandresen1 in PR #1175
Remove unnecessary call to mpl by @sandresen1 in PR #1184
Bugfixes#
Clear branch cache by @sandresen1 in PR #1143
Removed purging cache failure upon merging to develop by @sandresen1 in PR #1154
make_relative_value()
, unintented warning when preparing basket by @Magnus167 in PR #1158Change precision of tests to be more forgiving by @sandresen1 in PR #1160
Uses seaborn style correctly by @sandresen1 in PR #1161
Fix time_series_check number error by @sandresen1 in PR #1167
Fixing docs scripts for subpackages-within-subpackages by @Magnus167 in PR #1170
Changed tests to use relative tolerance to prevent occasional false failure by @sandresen1 in PR #1174
Clips expected zn scores to prevent occasional false failure on modify signals test by @sandresen1 in PR #1178
Removed unnecessary comments from
msp.__init__
by @Magnus167 in PR #1182
Full Changelog: v0.0.45←v0.0.46
Release v0.0.45#
New Features#
new class
SignalsReturns
, complementingSignalReturnRelations
by @sandresen1 in PR #1043Custom types and
isinstance()
checks by @Magnus167 in PR #1069Implementing
QuantamentalDataFrame
as a type by @Magnus167 in PR #1071macrosynergy.management.decorators
, consolidating common functionality by @Magnus167 in PR #1074CI/CD, clear GitHub actions caches post PR merge by @Magnus167 in PR #1082
Renaming workflow job names for status checks by @Magnus167 in PR #1106
Consolidating management utilities by @Magnus167 in PR #1111
Removing
pd.DataFrame
frommsm.decorators.argcopy
by @Magnus167 in PR #1116Subpackage for utilities by @Magnus167 in PR #1121
Prevent Build from succeeding if sys.path.append(os.getcwd()) is found by @sandresen1 in PR #1124
Remove use of deprecated function set-output in github actions by @sandresen1 in PR #1130
Bugfixes#
CI/CD, fixing check-pr action by @Magnus167 in PR #1103
CI/CD, check-pr workflow by @Magnus167 in PR #1104
Error messages in
make_zn_scores()
by @Magnus167 in PR #1107Side-effects in
qdf_to_ticker_df()
util. by @Magnus167 in PR #1112Incorrect version format for development versions by @Magnus167 in PR #1114
Adjustments for colourblind users by @Magnus167 in PR #1115
Updating deprecation message for MSM methods by @Magnus167 in PR #1122
Unittest, using
np.allclose
instead ofnp,all
&equ
by @Magnus167 in PR #1123Integration tests can’t run concurrently by @sandresen1 in PR #1127
Reverting “Feature: Subpackage for utilities” by @Magnus167 in PR #1135
Full Changelog: v0.0.44←v0.0.45
Release v0.0.44#
New Features#
new
panel_cv_scores
to return cv scores over a panel by @rushilg99 in PR #1055Consolidates apply_slip into utils.py by @sandresen1 in PR #1066
optional std dev cv metric + long bias display by @rushilg99 in PR #1077
Common cache on the
develop
branch by @Magnus167 in PR #1079added metrics to detect long bias in a model by @rushilg99 in PR #1081
ms.learning
, added benchmark transformer class by @rushilg99 in PR #1083CI/CD, Pull request QC and directives by @Magnus167 in PR #1084
Efficiency changes to shape_dfs.py by @sandresen1 in PR #1085
check_pr()
added version based directives by @Magnus167 in PR #1093
Bugfixes#
test_signal_return
, usingnp.isclose
instead ofround
by @Magnus167 in PR #1072macrosynergy.visuals
, safely failing when “seaborn-darkgrid” style is not available by @Magnus167 in PR #1075CI/CD, common cache by @Magnus167 in PR #1080
PR QC failing when no description provided by @sandresen1 in PR #1086
Merge-After directive not working in PRs by @Magnus167 in PR #1088
Change unit test to use relative tolerance to avoid test failing by @sandresen1 in PR #1091
view_timelines()
, cross-sectional mean not working by @Magnus167 in PR #1092Seaborn/Matplotlib style issue by @Magnus167 in PR #1094
PR QCD workflow by @Magnus167 in PR #1095
Full Changelog: v0.0.43←v0.0.44
Release v0.0.43#
New Features#
PanelTimeSeriesSplit
, added module docstring by @Magnus167 in PR #985Added print stdout arg to test args in
pyproject.toml
by @Magnus167 in PR #1033ticker_df_to_qdf()
utility by @Magnus167 in PR #1034extend
correl_matrix
to calculate correlation between two sets by @emhbrine in PR #1041pytest-xdist
, running multi-threaded tests by @sandresen1 in PR #1042Caches dependencies when building by @sandresen1 in PR #1047
Modular GH-actions by @Magnus167 in PR #1052
Bugfixes#
Change to
historic_vol.get_cycles()
to reduce memory overhead by @sandresen1 in PR #1035JPMaQSDownloader
, downloading generic DQ expressions by @Magnus167 in PR #1038Small change to unittest so it asserts due to unknown category by @sandresen1 in PR #1040
Remove multithreading in integration test workflows by @sandresen1 in PR #1051
Full Changelog: v0.0.42←v0.0.43
Release v0.0.42#
Bugfixes#
Cleaning up imports in
jpmaqs.py
by @Magnus167 in PR #1011Standard keywords in
make_test_df()
by @Magnus167 in PR #1014Cumulative Sum,
msv.view.timelines
by @Magnus167 in PR #1015Updating the URL for the logo in
docs/assets/jpb-config.yml
by @Magnus167 in PR #1016is_valid_iso_date
by @Magnus167 in PR #1022
Full Changelog: v0.0.41←v0.0.42
Release v0.0.41#
Bugfixes#
msv.view.timelines
sorting facet titles alphabetically by @Magnus167 in PR #1004
Full Changelog: v0.0.40←v0.0.41
Release v0.0.40#
Bugfixes#
view_timelines()
title adjustment by @Magnus167 in PR #996Single
cid
chart withxcat_grid
by @Magnus167 in PR #997
Full Changelog: v0.0.39←v0.0.40
Release v0.0.39#
New Features#
Delete
macrosynergy.pnl.real_pnl
by @Magnus167 in PR #986Removing
pyyaml
dependency by @Magnus167 in PR #987Updating
pyproject.toml
by @Magnus167 in PR #989
Full Changelog: v0.0.38←v0.0.39
Release v0.0.38#
Bugfixes#
Updating docs landing page by @Magnus167 in PR #981
Full Changelog: v0.0.37←v0.0.38
Release v0.0.37#
New Features#
Update README.md logo by @Magnus167 in PR #955
Added ability to pass directives in docstrings by @Magnus167 in PR #956
PanelTimeSeriesSplit
, added figsize to visualisation method by @rushilg99 in PR #970PanelTimeSeriesSplit
, matplotlib changes by @rushilg99 in PR #971PanelTimeSeriesSplit
, matplotlib graphics change by @rushilg99 in PR #972msm.utils
, updatingstandardise_dataframe
function by @Magnus167 in PR #973
Bugfixes#
Adding tests and warnings to docs by @Magnus167 in PR #960
PanelTimeSeriesSplit
, fixed adjustment of n_splits and train, test indices by @rushilg99 in PR #963CategoryRelations
, missing XCAT error message by @Magnus167 in PR #964CategoryRelations
, fixed Pandas warnings by @Magnus167 in PR #965panel_calculator()
, error with CID-XCAT intersection by @Magnus167 in PR #968msm.utils.standardise_dataframe
, code indentation by @Magnus167 in PR #974
Full Changelog: v0.0.36←v0.0.37
Release v0.0.36#
Bugfixes#
Bug - source misconfigured in TOML by @Magnus167 in PR #950
Full Changelog: v0.0.35←v0.0.36
Release v0.0.35#
New Features#
Adding line styles to
make_test_df()
by @Magnus167 in PR #938
Bugfixes#
check_availability()
, negative last updated date by @Magnus167 in PR #928Naive PNL - weekly rebal freq, attribute error by @Magnus167 in PR #933
New depr. warnings from
pandas==2.1.0
by @Magnus167 in PR #939
Full Changelog: v0.0.34←v0.0.35
Release v0.0.34#
New Features#
Add FAQs to README by @Magnus167 in PR #889
Bugfixes#
linear_composite()
, added pass-through fornormalize_weights
arg by @Magnus167 in PR #890‘check_availabilites()’ - “future” dates in plots by @Magnus167 in PR #894
Fixing
test_relative_value
by @Magnus167 in PR #899CategoryRelations()
aggregation error by @Magnus167 in PR #901linear_composite()
weights problem by @Magnus167 in PR #903SignalReturnRelations.apply_slip()
to raise warning instead of error for missing tickers by @Magnus167 in PR #904Linear Composites, missing
xcats
when usingxcat_agg
by @Magnus167 in PR #906check_availability()
- negative missing days by @Magnus167 in PR #914
Full Changelog: v0.0.33←v0.0.34
Release v0.0.33#
New Features#
Changing Integration tests by @Magnus167 in PR #869
Bugfixes#
Warning added to
_prepare_basket
by @Magnus167 in PR #803Reverting
view_timelines()
to last-stable-version by @Magnus167 in PR #874Added passthrough for title_xadj by @Magnus167 in PR #879
Updating docstring for
linear_composite()
by @Magnus167 in PR #880ISRELEASED=True for v0.0.33 by @Magnus167 in PR #884
ISRELEASED=True for v0.0.33 by @Magnus167 in PR #885
ISRELEASED=True for v0.0.33 by @Magnus167 in PR #886
Full Changelog: v0.0.32←v0.0.33
Release v0.0.32#
What’s Changed#
Update setup.py for v0.0.32 by @Magnus167 in PR #849
Bugfix : View Timelines, single CID charts legend by @Magnus167 in PR #844
Bugfix : Removing
vweights_threshold
param from linear_composites by @Magnus167 in PR #850Feature : Hide legend in
view_ranges()
when a single xcat is being shown by @Magnus167 in PR #835Feature : Changing Unit Testing strategy for CI/CD branches by @Magnus167 in PR #851
Updated setup.py for v0.0.32 by @Magnus167 in PR #852
Test←Develop for v0.0.32 by @Magnus167 in PR #853
Removed Windows & MacOS from release tests by @Magnus167 in PR #855
Test←Develop for v0.0.32 by @Magnus167 in PR #856
Feature : Update DQ Group ID by @Magnus167 in PR #858
Updating Test branch by @Magnus167 in PR #859
Main←Test for v0.0.32 by @Magnus167 in PR #860
Full Changelog: v0.0.31←v0.0.32
Release v0.0.31#
New Features#
Adding slippage functionality to SignalReturnRelations by @Magnus167 in PR #819
Full Changelog: v0.0.30←v0.0.31
Release v0.0.30#
New Features#
view_timelines
- Title-fontsize and Title-X-Pos adjustment by @Magnus167 in PR #817Add docstring to
CategoryRelations.apply_slip
by @Magnus167 in PR #818
Bugfixes#
Added warning behavior to
CategoryRelations.intersection_cids
by @Magnus167 in PR #804
Full Changelog: v0.0.29←v0.0.30
Release v0.0.29#
What’s Changed#
Main→Develop after release v0.0.28 by @Magnus167 in PR #799
Updating Version Number for v.0.0.29 by @Magnus167 in PR #800
Bugfix : Unittest/API by @Magnus167 in PR #805
Bugfix : Changed pandoc dependency in
pyproject.toml
by @Magnus167 in PR #808Feature : Error info to include
client_id
/certusername
as a genericuser_id
by @Magnus167 in PR #810Updated setup.py for release by @Magnus167 in PR #811
Test←Develop by @Magnus167 in PR #812
Main←Test for release v0.0.29 by @Magnus167 in PR #813
Full Changelog: v0.0.28←v0.0.29
Release v0.0.28#
New Features#
Adding
pyproject.toml
by @Magnus167 in PR #788
Bugfixes#
test_package.py
, Failing on Windows systems by @Magnus167 in PR #794
Full Changelog: v0.0.27←v0.0.28
Release v0.0.27#
What’s Changed#
NOTE: DataQuery requests now make a heartbeat check by default before requesting expressions/tickers
updated version number for v0.0.27 by @Magnus167 in PR #694
Feature/force_heartbeat by @Magnus167 in PR #695
Test ← Develop for v0.0.27 by @Magnus167 in PR #696
Main ← Test for v0.0.27 by @Magnus167 in PR #697
Full Changelog: v0.0.26←v0.0.27
Release v0.0.26#
What’s Changed#
Main → Develop for v0.0.25 by @Magnus167 in PR #681
updated version number for v0.0.26 by @Magnus167 in PR #682
Bugfix : Unbound variable error with retry logic in ms.download by @Magnus167 in PR #687
Bugfix : corrected exception handling in retry routine by @Magnus167 in PR #691
Bugfix : Changed internal date formatting by @Magnus167 in PR #689
Test ← Develop for v0.0.26 by @Magnus167 in PR #692
Main ← Test by @Magnus167 in PR #693
Full Changelog: v0.0.25←v0.0.26
Release v0.0.25#
What’s Changed#
code change for reshape of df_out and forward fill by @rsueppel in PR #596
Develop ← Main from v0.0.23 by @Magnus167 in PR #646
updated version number for v0.0.25 by @Magnus167 in PR #647
bugfix/naivepnl_facet_plots is still alive. by @Magnus167 in PR #649
Added xcat_grid to enable facetgraph for xcats by @Magnus167 in PR #651
updating branch with recent changes by @Magnus167 in PR #653
updated code_ql action by @Magnus167 in PR #658
fixed legend for non-faceted graphs; added shared-axis-label feature by @Magnus167 in PR #650
view_timelines title_adj: float = 0.95 by @rsueppel in PR #666
Bugfix : Updated error message for …InvalidResponseError by @Magnus167 in PR #668
Bugfix : Fixed API retry behaviour by @Magnus167 in PR #669
Fixed typo in package README.md by @Magnus167 in PR #670
Bugfix : Category relations with “cids” as separator by @Magnus167 in PR #667
reestimation frequency historic vol by @Magnus167 in PR #595
Bugfix : view_timelines, size arg by @Magnus167 in PR #673
Feature : Single Chart Argument on View Timelines by @Magnus167 in PR #671
Feature : Change default plot size in visual paneldates by @Magnus167 in PR #672
Feature : Updated setup.py for [3.7, 3.11] by @Magnus167 in PR #675
Change license MIT → BSD 3-Clause “New”/”Revised” by @Magnus167 in PR #637
Feature : updated workflows to run on py[3.7, 3.11] by @Magnus167 in PR #676
Bugfix : NaivePNL, XCAT labels in legend by @Magnus167 in PR #677
Bugfix : Fixed issue #664 again by @Magnus167 in PR #678
Test ← Develop for v0.0.25 by @Magnus167 in PR #679
Main ← Test for v0.0.25 by @Magnus167 in PR #680
Full Changelog: v0.0.24←v0.0.25
Release v0.0.24#
What’s Changed#
Develop ← Main after release by @Magnus167 in PR #633
Feature/cat relations split by @rushilg99 in PR #628
updated version number for v0.0.24 by @Magnus167 in PR #634
added show_progress functionality for download by @Magnus167 in PR #635
Feature : Linear Composites by @Magnus167 in PR #639
Bugfix : naive_pnl.plot_pnls() - facet plots by @Magnus167 in PR #641
Test ← Develop for v0.0.24 by @Magnus167 in PR #643
Main ← Test for v0.0.24 by @Magnus167 in PR #644
New Contributors#
@rushilg99 made their first contribution in PR #628
Full Changelog: v0.0.23←v0.0.24
Release v0.0.23#
What’s Changed#
The
macrosynergy.dataquery
module has been deprecated, with functionality moved tomacrosynergy.download
. Please refer to documentation for further details.*in [PR #recated, with functionality moved tomacrosynergy.download
. Please refer to documentation for further details.](https://github.com/macrosynergy/macrosynergy/pull/recated, with functionality moved tomacrosynergy.download
. Please refer to documentation for further details.**)updated version number for v0.0.22 by @Magnus167 in PR #602
Make DQ heartbeat (check connection) optional with default False by @Magnus167 in PR #605
Main - downstream for develop by @lsimonsen in PR #608
updated version number for v0.0.23 by @Magnus167 in PR #610
corrected job name on Publish to PyPI workflow by @Magnus167 in PR #611
added “proxies” keyword to api init kwargs by @Magnus167 in PR #613
Updated readme with api usage example for proxy server by @Magnus167 in PR #612
adding buisness days dif to be called from the package by @CyrusYavariMacro in PR #614
changes to setup.py for python version 3.10, 3.11 by @Magnus167 in PR #615
updated GH-actions versions by @Magnus167 in PR #616
Feature/api refactor by @Magnus167 in PR #604
API - logging related changes by @Magnus167 in PR #617
pinning sphinx (and sphinx themes’) version by @Magnus167 in PR #621
Bugfix in business_day_dif by @Magnus167 in PR #620
Bugfix (removing bugfix) in panel/panel_calculator.py by @Magnus167 in PR #618
Bugfixes in macrosynergy/download/dataquery.py by @Magnus167 in PR #622
Feature/docsbug by @CyrusYavariMacro in PR #624
API changes for ChunkedEncodingError and recording DQ Error messages by @Magnus167 in PR #626
Feature : Print Debug Logs by @Magnus167 in PR #629
changed readme by @Magnus167 in PR #631
Test ← Develop for v0.0.23 by @Magnus167 in PR #630
Main ← Test for v0.0.23 release by @Magnus167 in PR #632
Full Changelog: v0.0.22←v0.0.23
Release v0.0.22#
What’s Changed#
main ← hotfix/dq_heartbeat by @Magnus167 in PR #607
Full Changelog: v0.0.21←v0.0.22
Release v0.0.21#
What’s Changed#
updated version number to v0.0.21 by @Magnus167 in PR #591
Corrected xcat label assignment in NaivePNL by @Magnus167 in PR #594
DQ API add optional proxy server function by @lsimonsen in PR #598
merging test←develop for v0.0.21 by @Magnus167 in PR #599
Merging main←test, for releasing v0.0.21 by @Magnus167 in PR #600
Full Changelog: v0.0.20←v0.0.21
Release v0.0.20#
What’s Changed#
pushing v.0.0.19 by @Magnus167 in PR #560
Updated setup.py for v0.0.20 by @Magnus167 in PR #572
Fixed twine upload destination for TestPyPI by @Magnus167 in PR #573
develop -> test by @Magnus167 in PR #574
Corrected GH secrets token name in TestPyPI workflow by @Magnus167 in PR #575
develop -> test by @Magnus167 in PR #576
Updating readme by @CyrusYavariMacro in PR #577
Changed DataQuery API batch size from 10 to 20 by @Magnus167 in PR #578
Make integration tests run on the test branch by @Magnus167 in PR #580
added integration test to Publish to TestPyPI worklflow by @Magnus167 in PR #581
Adding workflow to publish to PyPI on release by @Magnus167 in PR #579
changed comments & whitespace in docs/source/conf.py by @Magnus167 in PR #582
Updating the test branch by @Magnus167 in PR #583
Removing publish command; for testing purposes by @Magnus167 in PR #586
Merge to Test from Develop, with Publish to TestPyPI disabled by @Magnus167 in PR #587
Merging into main from test, pushing v0.0.20 to PyPI by @Magnus167 in PR #588
Full Changelog: v0.0.19←v0.0.20
Release v0.0.19#
What’s Changed#
Merging version 0.0.18@develop to 0.0.18@test by @Magnus167 in PR #541
Feature/publish test py pi workflow by @Magnus167 in PR #543
Feature/publish test py pi workflow by @Magnus167 in PR #544
Feature/fix by @Magnus167 in PR #550
Feature/fix by @Magnus167 in PR #551
Feature/fix (#550) by @lsimonsen in PR #554
Test fixes by @lsimonsen in PR #548
Updated plot_pnls to include facets argument by @Magnus167 in PR #557
Updated setup.py for v0.0.19 by @Magnus167 in PR #559
Feature/main by @lsimonsen in PR #562
No squeeze by @lsimonsen in PR #565
Feature/new main by @lsimonsen in PR #564
Feature/fix (#550) by @lsimonsen in PR #563
Feature/main by @lsimonsen in PR #568
Feature/test by @lsimonsen in PR #567
Suggestion for PyPI version checks by @lsimonsen in PR #556
Updated install instructions in README.md by @Magnus167 in PR #569
Full Changelog: v0.0.18←v0.0.19
Release v0.0.18#
What’s Changed#
Release of bugfix to version 0.0.13 by @lsimonsen in PR #373
naive_pnl some changes for efficiency by @rsueppel in PR #514
MSY-500 Naive PnL mis-match of shapes by @lsimonsen in PR #517
Updating index by @CyrusYavariMacro in PR #516
Requirements by @CyrusYavariMacro in PR #520
#506 bugfix by @Magnus167 in PR #518
Updating test repo by @CyrusYavariMacro in PR #521
Updating main repo (#521) by @CyrusYavariMacro in PR #522
Changed L11 to avoid an extra ‘/’ in the API URLs by @Magnus167 in PR #531
Updating test repo (#521) by @lsimonsen in PR #532
Updated call to sns.lineplot to use “estimator” instead of “ci” by @Magnus167 in PR #525
changed “ci” keyword to “estimator” in sns.lineplot calls in view_timelines.py by @Magnus167 in PR #524
Main -> develop by @lsimonsen in PR #533
Fixed bug arising due to a type error by @Magnus167 in PR #523
Feature/codecov by @CyrusYavariMacro in PR #534
Updating integration test by @CyrusYavariMacro in PR #536
Adding feature to publish to TestPyPI by @Magnus167 in PR #527
Feature/check availability windows by @CyrusYavariMacro in PR #538
updating readme by @CyrusYavariMacro in PR #540
Feature/create panel for naive pnl 528 by @Magnus167 in PR #547
Feature/updatedreadme by @CyrusYavariMacro in PR #545
Feature/fix by @Magnus167 in PR #549
Full Changelog: v0.0.17←v0.0.18
Release v0.0.17#
What’s Changed#
shortening categories_relations and Todos by @rsueppel in PR #422
small changes, small Todos, and one big Todo by @rsueppel in PR #431
signal_return: partial review and TODOs by @rsueppel in PR #437
refactored hedge_ratio to returnbeta by @rsueppel in PR #448
DQ HTTP response code non-ok by @lsimonsen in PR #463
for naive_pnl moves sig_neg option to make_pnl method by @rsueppel in PR #473
mainly fixes sort_cids_by bug in view_ranges by @rsueppel in PR #474
naive_pnl debug line 100 was missing maxplit by @rsueppel in PR #480
New Contributors#
Full Changelog: v0.0.16←v0.0.17
Release v0.0.16#
What’s Changed#
Remove REFENCE_DATA from DQ API call by @lsimonsen in PR #426
Full Changelog: v0.0.15←v0.0.16
Release v0.0.15#
What’s Changed#
Adding error message for DQ ask by @lsimonsen in PR #423
Full Changelog: v0.0.14←v0.0.15
Release v0.0.14#
What’s Changed#
make_zn_score: Docs changes and Todos by @rsueppel in PR #358
Main - update with commits to develop by @lsimonsen in PR #370
Fix package structure and set to version 0.0.13 by @lsimonsen in PR #372
Example of usage case added to README by @lsimonsen in PR #375
Tests: Python 3.9 and 3.10 by @lsimonsen in PR #378
DataQuery Unittest and Integration test examples by @lsimonsen in PR #374
signal_return aggregation order also flipped by @rsueppel in PR #395
Full Changelog: v0.0.12←v0.0.14
Release Release of version 0.0.13#
What’s Changed#
Main - update with commits to develop by @lsimonsen in PR #370
Fix package structure and set to version 0.0.13 by @lsimonsen in PR #372
Release of bugfix to version 0.0.13 by @lsimonsen in PR #373
Full Changelog: v0.0.12←v0.0.13
Release Release version 0.0.12#
#Release notes:
Improved functionality for valuating strategy factors both statistically and on the pnl sidin [PR #ors both statistically and on the pnl side](https://github.com/macrosynergy/macrosynergy/pull/ors both statistically and on the pnl side)
Added DataQuery OAuth as an authentication option the DataQuery interface, and created a separate DataQuery subpackagein [PR #the DataQuery interface, and created a separate DataQuery subpackage.](https://github.com/macrosynergy/macrosynergy/pull/the DataQuery interface, and created a separate DataQuery subpackage.)
Simplified the README.md file for easier installation instructionsin [PR #ion instructions.](https://github.com/macrosynergy/macrosynergy/pull/ion instructions.)
What’s Changed#
changes basket instantiation and first shot at restructure by @rsueppel in PR #261
Basket class update in new structure by Curran by @rsueppel in PR #263
basket: changes to constructor and return functions by @rsueppel in PR #265
Merge pull request #270 from macrosynergy/basket_rs by @rsueppel in PR #272
mainly edit of target_positions docstring by @rsueppel in PR #283
small changes and todos to target positions by @rsueppel in PR #285
adds update_df to init and sets consistent function and argument names by @rsueppel in PR #289
correct positive ratios in signal_return by @rsueppel in PR #301
modifies make_zn_score use in naive_pnls by @rsueppel in PR #303
todos for daily hedge ratios and hedged returns by @rsueppel in PR #304
bugfix for incorrect PnL labeling in plot_pnls by @rsueppel in PR #314
small changes and todos for hedge ratio by @rsueppel in PR #315
Signal return rs: new table and metrics by @rsueppel in PR #320
integrate clustering and frequencty conversion in original correl_mat… by @rsueppel in PR #326
add sig_neg option to SignalReturnRelations by @rsueppel in PR #339
todos for sstrength_plot and signal_display in naive_pnl by @rsueppel in PR #346
renames naive_pnl signal functions, edits documentation and makes min… by @rsueppel in PR #348
naive_pnl cleanups and one more Todo by @rsueppel in PR #351
make_relative_value cleanups and Todos by @rsueppel in PR #350
signal_return: secure correct order of years in table by @rsueppel in PR #355
adds important documentation to summary_table by @rsueppel in PR #354
Modify README and docs by @lsimonsen in PR #366
Implement corrections for simplifications by @lsimonsen in PR #367
v0.0.12 by @lsimonsen in PR #368
Release of version 0.0.12 by @lsimonsen in PR #369
Full Changelog: v0.0.11←v0.0.12
Release Release version 0.0.11#
#Latest Macrosynergy release.
Release Release 0.0.3#
Main changes:#
Panel, category relations functionalitin PR #
Rolling historical volatility estimatein PR #
Continuous deployment pipelinin PR #
PyPI README notein PR #
View complete release notes on GitHub