Skip to content

Commit

Permalink
updated fetchMyTrades
Browse files Browse the repository at this point in the history
  • Loading branch information
kroitor committed Nov 5, 2017
1 parent 1fee031 commit 5d0c52e
Show file tree
Hide file tree
Showing 12 changed files with 106 additions and 22,645 deletions.
1 change: 0 additions & 1 deletion .gitattributes
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
build/ccxt.php linguist-generated=true
ccxt/exchanges.py linguis-generated=true
ccxt/async/exchanges.py linguist-generated=true
ccxt/async/__init__.py linguist-generated=false
Expand Down
90 changes: 39 additions & 51 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,41 +67,42 @@ The following is a set of rules for contributing to the ccxt library codebase.
The contents of the repository are structured as follows:

```shell
/ # root directory aka npm module/package folder for Node.js
/.babelrc # babel config used for making the ES5 version of the library
/.eslintrc # linter
/.gitattributes # contains linguist settings for language detection in repo
/.gitignore # ignore it
/.npmignore # ignore it npm-style
/.travis.yml # a YAML config for travis-ci (continuous integration)
/CHANGELOG.md # says itself
/CONTRIBUTING.md # this file
/LICENSE.txt # MIT
/MANIFEST.in # a PyPI-package file listing extra package files (license, configs, etc...)
/README.md # master markdown for GitHub, npmjs.com, npms.io, yarn and others
/README.rst # slave reStructuredText for PyPI
/build/ # a folder for the generated slave source files
/build/ccxt.php # slave generated PHP version of the ccxt library
/ccxt.js # master JS ES6 version of the ccxt library
/ccxt.php # base code for the PHP version of the ccxt library
/ccxt.py # base code for the Python version of the ccxt library
/ccxt/ # Python ccxt module/package folder for PyPI
/ccxt/__init__.py # slave generated Python-version of the ccxt library
/countries.js # a list of ISO 2-letter country codes in JS for testing, not very important
/examples/ # self-explaining
/examples/js # ...
/examples/php # ...
/examples/py # ...
/export-exchanges.js # used to create tables of exchanges in the docs during the build
/package.json # npm package file, also used in setup.py for version single-sourcing
/setup.cfg # wheels config file for the Python package
/setup.py # pip/setuptools script (build/install) for ccxt in Python
/run-tests.js # a front-end to run invididual tests of all exchanges in all languages (JS/PHP/Python)
/test # invididual tests for all languages
/tox.ini # tox config for Python
/transpile.js # the transpilation script
/update-badges.js # a JS script to update badges in the README and in docs
/vss.js # reads single-sourced version from package.json and writes it everywhere
/ # root directory aka npm module/package folder for Node.js
/.babelrc # babel config used for making the ES5 version of the library
/.eslintrc # linter
/.gitattributes # contains linguist settings for language detection in repo
/.gitignore # ignore it
/.npmignore # ignore it npm-style
/.travis.yml # a YAML config for travis-ci (continuous integration)
/CHANGELOG.md # says itself
/CONTRIBUTING.md # this file
/LICENSE.txt # MIT
/README.md # master markdown for GitHub, npmjs.com, npms.io, yarn and others
/build/ # a folder for the generated slave source files
/ccxt.js # entry point for the master JS ES6 version of the ccxt library
/ccxt.php # entry point for the PHP version of the ccxt library
/php/ # PHP ccxt module/package folder
/php/base/ # base code for the PHP version of the ccxt library
/python/ # Python ccxt module/package folder for PyPI
/python/__init__.py # entry point for the Python version of the ccxt.library
/python/async/__init__.py # asynchronous version of the ccxt.library for Python 3.5+ asyncio
/python/base/ # base code for the Python version of the ccxt library
/python/MANIFEST.in # a PyPI-package file listing extra package files (license, configs, etc...)
/python/README.rst # slave reStructuredText for PyPI
/python/setup.cfg # wheels config file for the Python package
/python/setup.py # pip/setuptools script (build/install) for ccxt in Python
/python/tox.ini # tox config for Python
/countries.js # a list of ISO 2-letter country codes in JS for testing, not very important
/examples/ # self-explaining
/examples/js # ...
/examples/php # ...
/examples/py # ...
/export-exchanges.js # used to create tables of exchanges in the docs during the build
/package.json # npm package file, also used in setup.py for version single-sourcing
/run-tests.js # a front-end to run invididual tests of all exchanges in all languages (JS/PHP/Python)
/transpile.js # the transpilation script
/update-badges.js # a JS script to update badges in the README and in docs
/vss.js # reads single-sourced version from package.json and writes it everywhere
```

#### Multilanguage Support
Expand All @@ -110,25 +111,12 @@ The ccxt library is available in three different languages (more to come). We en

At first, all language-specific versions were developed in parallel, but separately from each other. But when it became too hard to maintain and keep the code consistent among all supported languages we decided to switch to what we call a *master/slave* process. There is now a single master version in one language, that is JavaScript. Other language-specific versions are syntactically derived (transpiled, generated) from the master version. But it doesn't mean that you have to be a JS coder to contribute. The portability principle allows Python and PHP devs to effectively participate in developing the master version as well.

The ccxt library includes one single file per each language:

```shell
/ccxt.js # master JS ES6 version of the ccxt library
/ccxt.browser.js # base code for the browserified version of the library
/ccxt.php # base code for the slave PHP version of the ccxt library
/ccxt/exchange.py # base code for the slave Python version of the ccxt library
/ccxt/async/exchange.py # base code for the async Python 3.5+ version of the ccxt library
/ccxt/__init__.py # slave Python-version of the ccxt library
/build/ccxt.browser.js # slave browser bundle of the ccxt library
/build/ccxt.php # slave PHP-version of the ccxt library
```

The module entry points are:
- `./ccxt/__init__.py` for the Python pip package
- `./ccxt/async/__init__.py` for the Python 3.5+ ccxt.async subpackage
- `./python/__init__.py` for the Python pip package
- `./python/async/__init__.py` for the Python 3.5+ ccxt.async subpackage
- `./ccxt.js` for the Node.js npm package
- `./build/ccxt.browser.js` for the browser bundle
- `./build/ccxt.php` for PHP
- `./ccxt.php` for PHP

Slave files and docs are partially-generated from the master `ccxt.js` file by the `npm run build` command.

Expand Down
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -131,9 +131,9 @@ The easiest way to install the ccxt library is to use builtin package managers:

This library is shipped as an all-in-one module implementation with minimalistic dependencies and requirements:

- [`ccxt.js`](https://github.com/ccxt/ccxt/blob/master/ccxt.js) in JavaScript
- [`ccxt/`](https://github.com/ccxt/ccxt/blob/master/ccxt/) in Python (generated from JS)
- [`build/ccxt.php`](https://github.com/ccxt/ccxt/blob/master/build/ccxt.php) in PHP (generated from JS)
- [`js/`](https://github.com/ccxt/ccxt/blob/master/js/) in JavaScript
- [`python/`](https://github.com/ccxt/ccxt/blob/master/python/) in Python (generated from JS)
- [`php/`](https://github.com/ccxt/ccxt/blob/master/php/) in PHP (generated from JS)

You can also clone it into your project directory from [ccxt GitHub repository](https://github.com/ccxt/ccxt):

Expand Down Expand Up @@ -194,7 +194,7 @@ import ccxt.async as ccxt # link against the asynchronous version of ccxt

### PHP

The ccxt library in PHP: [**`ccxt.php`**](https://raw.githubusercontent.com/ccxt/ccxt/master/build/ccxt.php)
The ccxt library in PHP: [**`ccxt.php`**](https://raw.githubusercontent.com/ccxt/ccxt/master/ccxt.php)

It requires common PHP modules:

Expand Down
Loading

0 comments on commit 5d0c52e

Please sign in to comment.