This document is no longer up-to-date.
All notable changes to this project will be documented in this file. As this project was started for a class which requires I (wardbradt) record my daily changes, I will also daily record changes which may not be "notable."
The format is based on Keep a Changelog.
- Some comments in bellman_multi_graph.py
- StackSet (In utils/data_structures.py)
- get_greatest_edge_in_bunch, get_least_edge_in_bunch (In utils/graph_utils.py)
- print_profit_opportunity_for_path_multi (In utils/general.py)
- next_to_each_other and last_index_in_list (In utils/misc.py)
- tests/test_misc.py
- tests/bellman_multi_graph_test.py
- statement in print_profit_opportunity_for_path to account for empty paths
- bellmannx.py with comments and cleaner code, also made it so
bellman_ford
only returns the arbitrage loop (it cuts off extra trades) - bellman_multi_graph.py majorly. Look at comments to see how it works.
- Refactored utils and imports
- draw_graph_to_file(graph, dot_name: str, to_file: str) to draw_graph_to_png(graph, to_file: str)
- README.md to account for function name changes
- Explicit python decorator to README pre-formatted blocks
- Edge bunch definition to glossary.md
- examples/find_opportunity_for_one_coin_across_exchanges.py
- Reformatted README examples
- Two to-dos in README
- Added some imports to init.py files
- Marked some functions in bellman_multi_graph.py as protected
- init.py files [0.3.0b] - 2018-02-20
- Cross Exchange Bellman Ford (beta)
- Bellman Ford algorithm for Networkx graphs
- Beta Visualization Website (Thanks to @ksun0)
- Refactored utils
- Added
edge_bunches
for Networkx (Available at wardbradt/networkx) - Deprecated bellman.py
- ExchangeGraphBuilder to ExchangeMultiGraphBuilder
- SingularlyAvailableExchangeError
- Created ExchangeMultiGraphBuilder
- Researched Networkx
- Did some graph theory research (mainly on k-core and multigraphs)
- Tests
- Moved
_get_exchange
to utils - test_build_collections.py to test_build_markets.py
- Continued Bellman Ford development
- Made Bellman Ford asynchronous
- Began to implement Bellman Ford algorithm
- readme and glossary
- started js-dev branch
- examples/restrict_collections_with_kwargs_dict_argument.py
- glossary.md
- build_collections
- test_build_collections
- Made it so that values of any type can be entered into kwargs instead of just
str
,list
, anddict
objects. Values which are notlist
ordict
objects are treated asstr
objects previously were.
- Empty
test_kwargs_with_dict_as_rule
method
- Rules in async_build_markets.py to **kwargs
- Updated tests to reflect this
- outliers.py
- Added
ccxt_errors
to several methods in async_build_markets.py - Moved classes
SingularlyAvailableExchangeError
,SingularlyAvailableExchangeError
, andget_exchanges_for_market
from async_find_opportunities.py to utils.py so that they can be accessed from all files - Added (but did not implement)
from_json
argument toget_exchanges_for_market
- Cython version of code (under the /cythonperegrine directory)
- Examples directory (/examples)
- First speed comparison (in /examples)
calculate_time
in examples/calculate_time.py, a utility for measuring the speed of functions- Type aliases to some function declarations in peregrine/
- Unnecessary print statement at start of async_find_opportunities.py
- Cleaned up some doc strings
- test_bid_and_ask to _test_bid_and_ask to denote that it should not be accessed by users
- Unit tests for async_build_markets.py in peregrine/tests/test_build_collections.py
- Moved src files to peregrine subdirectory.
- Initial Commit