UBC-MDS / software-review-2021

1 stars 1 forks source link

Submission: stock_analyzer (Python) #6

Open Tammy1128 opened 3 years ago

Tammy1128 commented 3 years ago

Submitting Author: Kangyu (Mark) Wang (@ZIBOWANGKANGYU), Sicheng (Marc) Sun (@MarcSunUBC), Tingyu Zhang (@Tammy1128), William Xu (@williamxu7) Package Name: stock_analyzer One-Line Description of Package: A python package that analyzes stock data and provides data visualizations. Repository Link: stock_analyzer Version submitted: 0.1.13 Editor: Tiffany Timbers (@ttimbers) Reviewer 1: TBD
Reviewer 2: TBD
Archive: TBD
Version accepted: TBD


Description

This is a Python package that provides basic time series modelling functionalities to analyze historical stock prices. Investment in the stock market requires not only knowledge about the listed companies, but also basic summary statistics and modellings of individual stock prices. Given time-series stock price data, this package provides key summary statistics, applies moving average and exponential smoothing models to the data, and visualizes in-sample moving average as well as exponential smoothing fits. A convenient use case for this package is to combine it with the pandas_datareader package, which can provide well-formated stock price data from Yahoo Finance dataset with customized date range setting.

Scope

* Please fill out a pre-submission inquiry before submitting a data visualization package. For more info, see notes on categories of our guidebook.

The stock_analyzer package analyzes the data and provides visualizations for stock data, matching with the data visualization category.

The target audiences are people interested in the stock market and want to use this package to analyze and visualize stock data patterns.

A similar python package called PyNance can retrieve, analyze, and visualize data. The difference between this package and our package is that our package involves statistical analysis of the stock data and is much easier for users to implement.

Technical checks

For details about the pyOpenSci packaging requirements, see our packaging guide. Confirm each of the following by checking the box. This package:

Publication options

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.

Code of conduct

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

jiajie0225 commented 3 years ago

Package Review

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

Documentation

The package includes all the following forms of documentation:

Readme requirements The package meets the readme requirements below:

The README should include, from top to bottom:

Usability

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:

Functionality

For packages co-submitting to JOSS

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:

Final approval (post-review)

Estimated hours spent reviewing: 2 hours


Review Comments

Hi Mark, Marc, Tingyu, and William,

Thanks for putting this package together. I had fun playing around with some other stock symbols using your function! The functions work very smoothly and definitely a time saver for people who want to see basic summary statistics and modelings of individual stock prices.

I have a few comments below.

Great job in putting together this package. I find this package really useful especially when I am also an active stock trader. I really like the visualization. Overall, everything is good with all the installation, test cases, documents, and CI running. Although I included a few remarks, feel free to take what's useful. Let me know if you have any questions about this feedback.

Joshua

mikelynch416 commented 3 years ago

Package Review

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

Documentation

The package includes all the following forms of documentation:

Readme requirements The package meets the readme requirements below:

The README should include, from top to bottom:

Usability

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:

Functionality

For packages co-submitting to JOSS

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:

Final approval (post-review)

Estimated hours spent reviewing: 1.5


Review Comments

Hi guys, here is some additional feedback for the stock_analyzer package - hope you find it helpful.

Overall I was very impressed by the functionality that was included in this package as well as the thorough documentation included with each function. Nice work team!

Mike Lynch

Tammy1128 commented 3 years ago

Thank you @mikelynch416 and @jiajie0225 for your detailed reviews. Thanks for putting so much efforts on it! Good luck on the final block!