Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Fix #26 - Add new issues template #27

Merged
merged 1 commit into from
Aug 12, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Empty file added .github/CODEOWNERS
Empty file.
28 changes: 28 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
---
name: Bug report
about: Create a bug report to help us improve gQuant
title: "[BUG]"
labels: "? - Needs Triage, bug"
assignees: ''

---

**Describe the bug**
A clear and concise description of what the bug is.

**Steps/Code to reproduce bug**
Follow this guide http://matthewrocklin.com/blog/work/2018/02/28/minimal-bug-reports to craft a minimal bug report. This helps us reproduce the issue you're having and resolve the issue more quickly.

**Expected behavior**
A clear and concise description of what you expected to happen.

**Environment overview (please complete the following information)**
- Environment location: [Bare-metal, Docker, Cloud(specify cloud provider)]
- Method of gQuant install: [Docker build, or from source]


**Environment details**
Please run and paste the output of the `/print_env.sh` script here, to gather any other relevant environment details

**Additional context**
Add any other context about the problem here.
35 changes: 35 additions & 0 deletions .github/ISSUE_TEMPLATE/documentation-request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
---
name: Documentation request
about: Report incorrect or needed documentation
title: "[DOC]"
labels: "? - Needs Triage, doc"
assignees: ''

---

## Report incorrect documentation

**Location of incorrect documentation**
Provide links and line numbers if applicable.

**Describe the problems or issues found in the documentation**
A clear and concise description of what you found to be incorrect.

**Steps taken to verify documentation is incorrect**
List any steps you have taken:

**Suggested fix for documentation**
Detail proposed changes to fix the documentation if you have any.

---

## Report needed documentation

**Report needed documentation**
A clear and concise description of what documentation you believe it is needed and why.

**Describe the documentation you'd like**
A clear and concise description of what you want to happen.

**Steps taken to search for needed documentation**
List any steps you have taken:
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea for gQuant
title: "[FEA]"
labels: "? - Needs Triage, feature request"
assignees: ''

---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I wish I could use gQuant to do [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context, code examples, or references to existing implementations about the feature request here.
10 changes: 10 additions & 0 deletions .github/ISSUE_TEMPLATE/submit-question.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
name: Submit question
about: Ask a general question about gQuant
title: "[QST]"
labels: "? - Needs Triage, question"
assignees: ''

---

**What is your question?**
49 changes: 49 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
<!--

Thank you for contributing to gQuant :)

Here are some guidelines to help the review process go smoothly.

1. Please write a description in this text box of the changes that are being
made.

2. Please ensure that you have written units tests for the changes made/features
added.

3. There are CI checks in place to enforce that committed code follows our style
and syntax standards. Please see our contribution guide in `CONTRIBUTING.MD`
in the project root for more information about the checks we perform and how
you can run them locally.

4. If you are closing an issue please use one of the automatic closing words as
noted here: https://help.github.com/articles/closing-issues-using-keywords/

5. If your pull request is not ready for review but you want to make use of the
continuous integration testing facilities please label it with `[WIP]`.

6. If your pull request is ready to be reviewed without requiring additional
work on top of it, then remove the `[WIP]` label (if present) and replace
it with `[REVIEW]`. If assistance is required to complete the functionality,
for example when the C/C++ code of a feature is complete but Python bindings
are still required, then add the label `[HELP-REQ]` so that others can triage
and assist. The additional changes then can be implemented on top of the
same PR. If the assistance is done by members of the rapidsAI team, then no
additional actions are required by the creator of the original PR for this,
otherwise the original author of the PR needs to give permission to the
person(s) assisting to commit to their personal fork of the project. If that
doesn't happen then a new PR based on the code of the original PR can be
opened by the person assisting, which then will be the PR that will be
merged.

7. Once all work has been done and review has taken place please do not add
features or make changes out of the scope of those requested by the reviewer
(doing this just add delays as already reviewed code ends up having to be
re-reviewed/it is hard to tell what is new etc!). Further, please do not
rebase your branch on master/force push/rewrite history, doing any of these
causes the context of any comments made by reviewers to be lost. If
conflicts occur against master they should be resolved by merging master
into the branch used for making the pull request.

Many thanks in advance for your cooperation!

-->
14 changes: 14 additions & 0 deletions notebook/cuIndicator/viz/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
import ipywidgets as widgets

def get_para_widgets():
para_selector = widgets.IntSlider(min=2, max=60, description="TRIX")
para_selector_widgets = [para_selector]
return para_selector_widgets

def get_parameters(stock_df, para_selector_widgets):
return (stock_df["close"],) + tuple([w.value for w in para_selector_widgets])

def process_outputs(output, stock_df):
stock_df['out'] = output
stock_df['out'] = stock_df['out'].fillna(0)
return stock_df
30 changes: 30 additions & 0 deletions notebook/cuIndicator/viz/_accumulation_distribution.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
import ipywidgets as widgets
from bqplot.colorschemes import CATEGORY20
from bqplot import Axis, Figure, LinearScale, Lines

from gquant.cuindicator import accumulation_distribution as indicator_fun

def get_para_widgets():
para_selector = widgets.IntSlider(min=2, max=60, description="Accumulation Distribution")
para_selector_widgets = [para_selector]
return para_selector_widgets

def get_parameters(stock_df, para_selector_widgets):
return (stock_df["high"], stock_df["low"], stock_df["close"], stock_df["volume"]) + tuple([w.value for w in para_selector_widgets])

def process_outputs(output,stock_df):
stock_df['out'] = output
stock_df['out'] = output.fillna(0)
return stock_df

def create_figure(stock, dt_scale, sc, color_id, f, indicator_figure_height, figure_width, add_new_indicator):
sc_co = LinearScale()
ax_y = Axis(label='Accumulation Distribution', scale=sc_co, orientation='vertical')
new_line = Lines(x=stock.datetime, y=stock['out'], scales={'x': dt_scale, 'y': sc_co}, colors=[CATEGORY20[color_id[0]]])
new_fig = Figure(marks=[new_line], axes=[ax_y])
new_fig.layout.height = indicator_figure_height
new_fig.layout.width = figure_width
figs = [new_line]
# add new figure
add_new_indicator(new_fig)
return figs
30 changes: 30 additions & 0 deletions notebook/cuIndicator/viz/_ease_of_movement.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
import ipywidgets as widgets
from bqplot.colorschemes import CATEGORY20
from bqplot import Axis, Figure, LinearScale, Lines

from gquant.cuindicator import ease_of_movement as indicator_fun

def get_para_widgets():
para_selector = widgets.IntSlider(min=2, max=60, description="Ease of Movement")
para_selector_widgets = [para_selector]
return para_selector_widgets

def get_parameters(stock_df, para_selector_widgets):
return (stock_df["high"], stock_df["low"], stock_df["volume"]) + tuple([w.value for w in para_selector_widgets])

def process_outputs(output,stock_df):
stock_df['out'] = output
stock_df['out'] = output.fillna(0)
return stock_df

def create_figure(stock, dt_scale, sc, color_id, f, indicator_figure_height, figure_width, add_new_indicator):
sc_co = LinearScale()
ax_y = Axis(label='Ease of Movement', scale=sc_co, orientation='vertical')
new_line = Lines(x=stock.datetime, y=stock['out'], scales={'x': dt_scale, 'y': sc_co}, colors=[CATEGORY20[color_id[0]]])
new_fig = Figure(marks=[new_line], axes=[ax_y])
new_fig.layout.height = indicator_figure_height
new_fig.layout.width = figure_width
figs = [new_line]
# add new figure
add_new_indicator(new_fig)
return figs
30 changes: 30 additions & 0 deletions notebook/cuIndicator/viz/_keltner_channel.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
import ipywidgets as widgets
from bqplot.colorschemes import CATEGORY20
from bqplot import Axis, Figure, LinearScale, Lines

from gquant.cuindicator import keltner_channel as indicator_fun

def get_para_widgets():
para_selector = widgets.IntSlider(min=2, max=60, description="Keltner Channel")
para_selector_widgets = [para_selector]
return para_selector_widgets

def get_parameters(stock_df, para_selector_widgets):
return (stock_df["high"], stock_df["low"], stock_df["close"]) + tuple([w.value for w in para_selector_widgets])

def process_outputs(output,stock_df):
stock_df['out'] = output
stock_df['out'] = output.fillna(0)
return stock_df

def create_figure(stock, dt_scale, sc, color_id, f, indicator_figure_height, figure_width, add_new_indicator):
sc_co = LinearScale()
ax_y = Axis(label='Keltner Channel', scale=sc_co, orientation='vertical')
new_line = Lines(x=stock.datetime, y=stock['out'], scales={'x': dt_scale, 'y': sc_co}, colors=[CATEGORY20[color_id[0]]])
new_fig = Figure(marks=[new_line], axes=[ax_y])
new_fig.layout.height = indicator_figure_height
new_fig.layout.width = figure_width
figs = [new_line]
# add new figure
add_new_indicator(new_fig)
return figs
30 changes: 30 additions & 0 deletions notebook/cuIndicator/viz/_on_balance_volume.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
import ipywidgets as widgets
from bqplot.colorschemes import CATEGORY20
from bqplot import Axis, Figure, LinearScale, Lines

from gquant.cuindicator import on_balance_volume as indicator_fun

def get_para_widgets():
para_selector = widgets.IntSlider(min=2, max=60, description="On Balance volume")
para_selector_widgets = [para_selector]
return para_selector_widgets

def get_parameters(stock_df, para_selector_widgets):
return (stock_df["close"], stock_df["volume"]) + tuple([w.value for w in para_selector_widgets])

def process_outputs(output,stock_df):
stock_df['out'] = output
stock_df['out'] = output.fillna(0)
return stock_df

def create_figure(stock, dt_scale, sc, color_id, f, indicator_figure_height, figure_width, add_new_indicator):
sc_co = LinearScale()
ax_y = Axis(label='On Balance volume', scale=sc_co, orientation='vertical')
new_line = Lines(x=stock.datetime, y=stock['out'], scales={'x': dt_scale, 'y': sc_co}, colors=[CATEGORY20[color_id[0]]])
new_fig = Figure(marks=[new_line], axes=[ax_y])
new_fig.layout.height = indicator_figure_height
new_fig.layout.width = figure_width
figs = [new_line]
# add new figure
add_new_indicator(new_fig)
return figs
30 changes: 30 additions & 0 deletions notebook/cuIndicator/viz/_stochastic_oscillator_k.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
import ipywidgets as widgets
from bqplot.colorschemes import CATEGORY20
from bqplot import Axis, Figure, LinearScale, Lines

from gquant.cuindicator import stochastic_oscillator_k as indicator_fun

def get_para_widgets():
#para_selector = widgets.IntSlider(min=2, max=60, description="Ultimate Oscillator")
para_selector_widgets = []
return para_selector_widgets

def get_parameters(stock_df, para_selector_widgets):
return (stock_df["high"], stock_df["low"], stock_df["close"])

def process_outputs(output,stock_df):
stock_df['out'] = output
stock_df['out'] = output.fillna(0)
return stock_df

def create_figure(stock, dt_scale, sc, color_id, f, indicator_figure_height, figure_width, add_new_indicator):
sc_co = LinearScale()
ax_y = Axis(label='Stochastic Oscillator K', scale=sc_co, orientation='vertical')
new_line = Lines(x=stock.datetime, y=stock['out'], scales={'x': dt_scale, 'y': sc_co}, colors=[CATEGORY20[color_id[0]]])
new_fig = Figure(marks=[new_line], axes=[ax_y])
new_fig.layout.height = indicator_figure_height
new_fig.layout.width = figure_width
figs = [new_line]
# add new figure
add_new_indicator(new_fig)
return figs
39 changes: 39 additions & 0 deletions notebook/cuIndicator/viz/admi.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
import ipywidgets as widgets
from bqplot.colorschemes import CATEGORY20
from bqplot import Axis, Figure, LinearScale, Lines

from gquant.cuindicator import average_directional_movement_index as indicator_fun

def get_para_widgets():
para_selector = widgets.IntRangeSlider(value=[10, 30],
min=3,
max=60,
step=1,
description="ADMI:",
disabled=False,
continuous_update=False,
orientation='horizontal',
readout=True)
para_selector_widgets = [para_selector]
return para_selector_widgets

def get_parameters(stock_df, para_selector_widgets):
widget = para_selector_widgets[0]
return (stock_df["high"], stock_df["low"], stock_df["close"], widget.value[0], widget.value[1])

def process_outputs(output, stock_df):
stock_df['out'] = output
stock_df['out'] = stock_df['out'].fillna(0)
return stock_df

def create_figure(stock, dt_scale, sc, color_id, f, indicator_figure_height, figure_width, add_new_indicator):
sc_co = LinearScale()
ax_y = Axis(label='ADMI', scale=sc_co, orientation='vertical')
new_line = Lines(x=stock.datetime, y=stock['out'], scales={'x': dt_scale, 'y': sc_co}, colors=[CATEGORY20[color_id[0]]])
new_fig = Figure(marks=[new_line], axes=[ax_y])
new_fig.layout.height = indicator_figure_height
new_fig.layout.width = figure_width
figs = [new_line]
# add new figure
add_new_indicator(new_fig)
return figs
30 changes: 30 additions & 0 deletions notebook/cuIndicator/viz/average_true_range.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
import ipywidgets as widgets
from bqplot.colorschemes import CATEGORY20
from bqplot import Axis, Figure, LinearScale, Lines

from gquant.cuindicator import average_true_range as indicator_fun

def get_para_widgets():
para_selector = widgets.IntSlider(min=2, max=60, description="Average True Range")
para_selector_widgets = [para_selector]
return para_selector_widgets

def get_parameters(stock_df, para_selector_widgets):
return (stock_df["high"],stock_df["low"], stock_df["close"]) + tuple([w.value for w in para_selector_widgets])

def process_outputs(output,stock_df):
stock_df['out'] = output
stock_df['out'] = output.fillna(0)
return stock_df

def create_figure(stock, dt_scale, sc, color_id, f, indicator_figure_height, figure_width, add_new_indicator):
sc_co = LinearScale()
ax_y = Axis(label='Average True Range', scale=sc_co, orientation='vertical')
new_line = Lines(x=stock.datetime, y=stock['out'], scales={'x': dt_scale, 'y': sc_co}, colors=[CATEGORY20[color_id[0]]])
new_fig = Figure(marks=[new_line], axes=[ax_y])
new_fig.layout.height = indicator_figure_height
new_fig.layout.width = figure_width
figs = [new_line]
# add new figure
add_new_indicator(new_fig)
return figs
Loading