MNT: Adapt examples for updated jupytext behavior

This commit is contained in:
Kernc
2019-03-01 17:27:27 +01:00
parent 76465a4af2
commit a7d1d4f3fa
5 changed files with 15 additions and 5 deletions

View File

@@ -5,7 +5,7 @@
# extension: .py
# format_name: light
# format_version: '1.3'
# jupytext_version: 0.8.6
# jupytext_version: 1.0.2
# kernelspec:
# display_name: Python 3
# language: python
@@ -51,6 +51,8 @@ def RSI(array, n):
loss[loss > 0] = 0
rs = gain.ewm(n).mean() / loss.abs().ewm(n).mean()
return 100 - 100 / (1 + rs)
# -
# The strategy roughly goes like this:

View File

@@ -6,7 +6,7 @@
# extension: .py
# format_name: light
# format_version: '1.3'
# jupytext_version: 0.8.6
# jupytext_version: 1.0.2
# kernelspec:
# display_name: Python 3
# language: python
@@ -83,6 +83,8 @@ class Sma4Cross(Strategy):
crossover(self.data.Close, self.sma_exit)):
self.position.close()
# -
# It's not a robust strategy, but we can optimize it. Let's optimize our strategy on Google stock data.

View File

@@ -6,7 +6,7 @@
# extension: .py
# format_name: light
# format_version: '1.3'
# jupytext_version: 0.8.6
# jupytext_version: 1.0.2
# kernelspec:
# display_name: Python 3
# language: python
@@ -58,6 +58,8 @@ def SMA(values, n):
each step taking into account `n` previous values.
"""
return pd.Series(values).rolling(n).mean()
# -
# Note, this is the exact same helper function as the one used in the project unit tests, so we could just import that instead.
@@ -99,6 +101,8 @@ class SmaCross(Strategy):
# Else, if sma1 crosses below sma2, sell it
elif crossover(self.sma2, self.sma1):
self.sell()
# -
# In `init()` as well as in `next()`, the data the strategy is simulated on is available as an instance variable

View File

@@ -5,7 +5,7 @@
# extension: .py
# format_name: light
# format_version: '1.3'
# jupytext_version: 0.8.6
# jupytext_version: 1.0.2
# kernelspec:
# display_name: Python 3
# language: python
@@ -79,6 +79,8 @@ class SmaCross(SignalStrategy,
# Set trailing stop-loss to 4x ATR
# using the method provided by TrailingStrategy
self.set_trailing_sl(4)
# -
# Note, since the strategies in _lib_ may require their own intialization and next-tick logic, be sure to **always call `super().init()` and `super().next()` in your overridden methods**.

View File

@@ -38,7 +38,7 @@ if __name__ == '__main__':
extras_require={
'doc': [
'pdoc3',
'jupytext >= 0.7.0',
'jupytext >= 1.0.2',
'nbconvert',
'ipykernel', # for nbconvert
'jupyter_client', # for nbconvert