Open nobbynguyen opened 2 years ago
Please check off boxes as applicable, and elaborate in comments below. Your review is not limited to these topics, as described in the reviewer guide
The package includes all the following forms of documentation:
setup.py
file or elsewhere.Readme requirements The package meets the readme requirements below:
The README should include, from top to bottom:
Reviewers are encouraged to submit suggestions (or pull requests) that will improve the usability of the package as a whole. Package structure should follow general community best-practices. In general please consider:
Note: Be sure to check this carefully, as JOSS's submission requirements and scope differ from pyOpenSci's in terms of what types of packages are accepted.
The package contains a paper.md
matching JOSS's requirements with:
Estimated hours spent reviewing: 1 hour
What an interesting package this is, especially on the wave of crypto hype this could prove to be quite a popular package in time to come! Good job with creating this innovative package! Some thoughts for further improvements:
retrieve_data
documentation can also include some more details like the actual time for 'maximum time' that can be pulled from data. The parameters for input says 'name' but 'symbol' was actually used instead in function call. Perhaps more explanation for name
input would be useful (what standard for symbol are we looking at)plot_price
plot date axis gives months but not years so it is not very clear which year range this plot is plotting. Consider adding the year as well. daily_growth_rate
seems like a good feature. Further improvement can be thinking of how to handle different types of frequency data and yet still calculate the daily growth, for example if the data is in minutes or hours (aggregate by day).avg_daily_return
is also useful, and can be expanded to give users option to calculate avg weekly or monthly returns. So provide another argument in the function for 'period' and users can type in what granularity they want.Please check off boxes as applicable, and elaborate in comments below. Your review is not limited to these topics, as described in the reviewer guide
The package includes all the following forms of documentation:
setup.py
file or elsewhere.Readme requirements The package meets the readme requirements below:
The README should include, from top to bottom:
Reviewers are encouraged to submit suggestions (or pull requests) that will improve the usability of the package as a whole. Package structure should follow general community best-practices. In general please consider:
Note: Be sure to check this carefully, as JOSS's submission requirements and scope differ from pyOpenSci's in terms of what types of packages are accepted.
The package contains a paper.md
matching JOSS's requirements with:
Estimated hours spent reviewing: 1 hour
In the README.md under the Import all functions:
section, it would be better to remove the <<<
for easier copy as a whole. I first copied the whole chunk into Python
and it will throw message like SyntaxError: invalid syntax
. Should be an easy update!
For function retrieve_data(symbol="BTC-USDT", time_period="1day", start_date="2018-01-01", end_date="2022-01-10", )
, could be better to explain a little bit what symbol
is. I am still a little bit confused about it even after reading the documents.
The x-axis of the plot output does not show a clear time range like from which year to which year as there is only a monthly interval. Could also include year information in the x-axis of the plot for easier understanding.
In your example usage website link(https://cryptocurrencyeda.readthedocs.io/en/latest/example.html#imports), there is ab error message ModuleNotFoundError: No module named 'cryptocurrencyeda'
under the Import
section. Should be an easy fix.
You can also plot the daily growth rate for users (can be a new function in the future). Overall, it is a good function. Nice job! By the way, you did not included the codecov badge in README. Could have a simple update!
Please check off boxes as applicable, and elaborate in comments below. Your review is not limited to these topics, as described in the reviewer guide
The package includes all the following forms of documentation:
setup.py
file or elsewhere.Readme requirements The package meets the readme requirements below:
The README should include, from top to bottom:
Reviewers are encouraged to submit suggestions (or pull requests) that will improve the usability of the package as a whole. Package structure should follow general community best-practices. In general please consider:
Note: Be sure to check this carefully, as JOSS's submission requirements and scope differ from pyOpenSci's in terms of what types of packages are accepted.
The package contains a paper.md
matching JOSS's requirements with:
Estimated hours spent reviewing: 45 minutes
ModuleNotFoundError
under the Imports
section, which should be fixed as it is the official documentation CodeCov
and docs
(for showing that the docs are rendered properly whenever a change is pushed to main branch as part of release) >>>
can be removed from the README
file under Import all functions
and use the functions
so that it is easy for the user to copy and directly try out your codeavg_daily_return
can be rounded off to nearest 2 or 3 decimal places for better readability and interpretability.API Reference
section in ReadTheDocs, daily_growth_rate
function, the parameters are not being rendered as bullet points like in other functions
plot_price
, the Examples heading is missing under which >>>plot_price(df)
should be written
Both 6 and 7 points above can be rectified by tweaking your python function docstrings
daily_growth
function could be to plot the graph for easy visualisation for better interpretability
Submitting Authors:
Package Name: cryptocurrencyeda One-Line Description of Package: A Python package for simple exploratory data analysis of historical cryptocurrency prices and performance. Repository Link: cryptocurrencyeda Version submitted: 1.0.1 Editor: Florencia D'Andrea (@flor14)
Reviewers:
Description
This is a Python package to analyze historical cryptocurrency prices and performance through simple exploratory data analysis including calculations and plotting. Data is sourced from the KuCoin API. There are four functions that are included in this python package which are described in more detail below. Cryptocurrency investors and enthusiasts can use this package to analyze cryptocurrencies of interest. There are four functions in our packages:
retrieve_data
: downloads historical data from a cryptocurrency exchange using an an http request from a cryptocurrency exchange.plot_price
: generates and visualizes a plot of the price of the cryptocurrenty inputted over a period of time.daily_growth_rate
: performs calculation of daily growth rate of the cryptocurrenty inputted over a period of time.avg_daily_return
: performs calculation of the average daily return of the inputted cryptocurrency price.Please indicate which category or categories this package falls under:
* Please fill out a pre-submission inquiry before submitting a data visualization package. For more info, see notes on categories of our guidebook.
@tag
the editor you contacted:Technical checks
For details about the pyOpenSci packaging requirements, see our packaging guide. Confirm each of the following by checking the box. This package:
[x] does not violate the Terms of Service of any service it interacts with.
[x] has an OSI approved license.
[x] contains a README with instructions for installing the development version.
[x] includes documentation with examples for all functions.
[ ] contains a vignette with examples of its essential functions and uses.
[x] has a test suite.
[x] has continuous integration, such as Travis CI, AppVeyor, CircleCI, and/or others.
Publication options
[ ] Do you wish to automatically submit to the Journal of Open Source Software? If so:
JOSS Checks
- [ ] The package has an **obvious research application** according to JOSS's definition in their [submission requirements][JossSubmissionRequirements]. Be aware that completing the pyOpenSci review process **does not** guarantee acceptance to JOSS. Be sure to read their submission requirements (linked above) if you are interested in submitting to JOSS. - [ ] The package is not a "minor utility" as defined by JOSS's [submission requirements][JossSubmissionRequirements]: "Minor ‘utility’ packages, including ‘thin’ API clients, are not acceptable." pyOpenSci welcomes these packages under "Data Retrieval", but JOSS has slightly different criteria. - [ ] The package contains a `paper.md` matching [JOSS's requirements][JossPaperRequirements] with a high-level description in the package root or in `inst/`. - [ ] The package is deposited in a long-term repository with the DOI: *Note: Do not submit your package separately to JOSS*Are you OK with Reviewers Submitting Issues and/or pull requests to your Repo Directly?
This option will allow reviewers to open smaller issues that can then be linked to PR's rather than submitting a more dense text based review. It will also allow you to demonstrate addressing the issue via PR links.
[x] Yes I am OK with reviewers submitting requested changes as issues to my repo. Reviewers will then link to the issues in their submitted review.
Code of conduct
[x] I agree to abide by pyOpenSci's Code of Conduct during the review process and in maintaining my package should it be accepted.
P.S. *Have feedback/comments about our review process? Leave a comment here
Editor and Review Templates
Editor and review templates can be found here