Skip to content

Commit

Permalink
Deployed 38f6fe7 to main with MkDocs 1.6.1 and mike 2.1.3
Browse files Browse the repository at this point in the history
  • Loading branch information
github-actions[bot] committed Sep 12, 2024
1 parent 51516ff commit d9c0fcd
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 1 deletion.
1 change: 1 addition & 0 deletions main/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -550,6 +550,7 @@ <h3 id="custom-indicators">Custom indicators<a class="headerlink" href="#custom-
<li><a href="https://www.tradingview.com/script/25KCgL9H/">MADR</a> - Moving Average Deviation Rate</li>
<li><a href="https://www.tradingview.com/script/xzIoaIJC-SSL-channel/">SSL</a> - SSL Channel</li>
<li><a href="https://www.tradingview.com/script/sU9molfV/">PMAX</a> - PMAX indicator</li>
<li><a href="https://www.tradingview.com/pine-script-reference/v5/#fun_ta.alma">ALMA</a> - Arnaud Legoux Moving Average</li>
</ul>
<h3 id="utilities">Utilities<a class="headerlink" href="#utilities" title="Permanent link">&para;</a></h3>
<ul>
Expand Down
2 changes: 1 addition & 1 deletion main/search/search_index.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Technical","text":"<p>Technical is a companion project for Freqtrade. It includes technical indicators, as well as helpful utilities (e.g. timeframe resampling) aimed to assist in strategy development for Freqtrade.</p>"},{"location":"#what-does-it-do-for-you","title":"What does it do for you","text":"<p>Technical provides easy to use indicators, collected from all over github, as well as custom methods. Over time we plan to provide a simple API wrapper around TA-Lib, PyTi and others, as we find them. So you have one place, to find 100s of indicators.</p>"},{"location":"#custom-indicators","title":"Custom indicators","text":"<ul> <li>Consensus - an indicator which is based on a consensus model, across several indicators you can easily customize these. It is based on the TradingView buy/sell graph. - MovingAverage Consensus - Oscillator Consensus - Summary Consensus</li> <li>vfi - a modified version of On-Balance Volume (OBV) created by Markos Katsanos that gives better interpretation of current market trend.</li> <li>mmar - an indicator that uses multiple MAs of different length to categorize the market trend into 4 different categories</li> <li>madrid_sqz - an indicator that uses multiple MAs to categorize the market trend into 6 different categories and to spot a squeeze</li> <li>stc</li> <li>ichimoku cloud</li> <li>volume weighted moving average - a variation of the Simple Moving Average (SMA) that taking into account both price and volume</li> <li>laguerre - an indicator developed by John Ehlers as a way to minimize both the noise and lag of the regular RSI</li> <li>vpci</li> <li>trendlines - 2 different algorithms to calculate trendlines</li> <li>fibonacci_retracements - an indicator showing the fibonacci level which each candle exceeds</li> <li>pivots points</li> <li>TKE Indicator - Arithmetical mean of 7 oscilators</li> <li>Volume Weighted MACD - Volume Weighted MACD indicator</li> <li>RMI - Relative Momentum indicator</li> <li>VIDYA - Variable Index Dynamic Average</li> <li>MADR - Moving Average Deviation Rate</li> <li>SSL - SSL Channel</li> <li>PMAX - PMAX indicator</li> </ul>"},{"location":"#utilities","title":"Utilities","text":"<ul> <li>resample - easily resample your dataframe to a larger interval</li> <li>merge - merge your resampled dataframe into your original dataframe, so you can build triggers on more than 1 interval!</li> </ul>"},{"location":"#wrapped-indicators","title":"Wrapped Indicators","text":"<p>The following indicators are available and have been 'wrapped' to be used on a dataframe with the standard open/close/high/low/volume columns:</p> <ul> <li>chaikin_money_flow - Chaikin Money Flow, requires dataframe and period</li> <li>accumulation_distribution - requires a dataframe</li> <li>osc - requires a dataframe and the periods</li> <li>atr - dataframe, period, field</li> <li>atr_percent - dataframe, period, field</li> <li>bollinger_bands - dataframe, period, stdv, field, prefix</li> <li>cmo - dataframe, period, field</li> <li>cci - dataframe, period</li> <li>williams percent</li> <li>momentum oscillator</li> <li>hull moving average</li> <li>ultimate oscillator</li> <li>sma</li> <li>ema</li> <li>tema</li> </ul> <p>We will try to add more and more wrappers as we get to it, but please be patient or help out with PR's! It's super easy, but also super boring work.</p>"},{"location":"#usage","title":"Usage","text":"<p>to use the library, please install it with pip</p> <pre><code>pip install technical\n</code></pre> <p>To get the latest version, install directly from github:</p> <pre><code>pip install git+https://github.com/freqtrade/technical\n</code></pre> <p>and then import the required packages</p> <pre><code>from technical.indicators import accumulation_distribution, ...\nfrom technical.util import resample_to_interval, resampled_merge\n\n# Assuming 1h dataframe -resampling to 4h:\ndataframe_long = resample_to_interval(dataframe, 240) # 240 = 4 * 60 = 4h\n\ndataframe_long['rsi'] = ta.RSI(dataframe_long)\n# Combine the 2 dataframes\ndataframe = resampled_merge(dataframe, dataframe_long, fill_na=True)\n\n\"\"\"\nThe resulting dataframe will have 5 resampled columns in addition to the regular columns,\nfollowing the template resample_&lt;interval_in_minutes&gt;_&lt;orig_column_name&gt;.\nSo in the above example:\n['resample_240_open', 'resample_240_high', 'resample_240_low','resample_240_close', 'resample_240_rsi']\n\"\"\"\n</code></pre>"},{"location":"#contributions","title":"Contributions","text":"<p>We will happily add your custom indicators to this repo! Just clone this repository and implement your favorite indicator to use with Freqtrade and create a Pull Request.</p> <p>Have fun!</p>"},{"location":"developer/","title":"Developer documentation","text":"<p>This page is intended for developers of the <code>technical</code> library, people who want to contribute to the <code>technical</code> codebase or documentation, or people who want to understand the source code of the application they're running.</p> <p>All contributions, bug reports, bug fixes, documentation improvements, enhancements and ideas are welcome. We track issues on GitHub. For generic questions, please use the discord server, where you can ask questions.</p>"},{"location":"developer/#releases","title":"Releases","text":"<p>Bump the <code>__version__</code> naming in <code>technical/__init__.py</code> and create a new release on github with a matching tag.</p> <p>Note</p> <p>Version numbers must follow allowed versions from PEP0440 to avoid failures pushing to pypi.</p>"},{"location":"developer/#pypi","title":"Pypi","text":"<p>Pypi releases happen automatically on a new release through github actions.</p>"},{"location":"general-usage/","title":"General Usage","text":"<p>After installation, technical can be imported and used in your code.</p> <p>We recommend to import freqtrade.indicators as ftt to avoid conflicts with other libraries, and to help determining where indicator calculations came from.</p> <pre><code>import technical.indicators as ftt\n\n# The indicator calculations can now be used as follows:\n\ndataframe['cmf'] = ftt.chaikin_money_flow(dataframe)\n</code></pre>"},{"location":"general-usage/#indicator-functions","title":"Indicator functions","text":"<p>All built in indicators are designed to work with a pandas DataFrame as provided by freqtrade, containing the standard columns: open, high, low, close and volume. This dataframe should be provided as the first argument to the indicator function. Depending on the indicator, additional parameters may be required.</p>"},{"location":"general-usage/#return-type","title":"Return type","text":"<p>Depending on the indicator, the return type may be a pandas Series, a tuple of pandas Series, or a pandas DataFrame.</p>"},{"location":"general-usage/#resample-to-interval","title":"Resample to interval","text":"<p>The helper methods <code>resample_to_interval</code> and <code>resampled_merge</code> are used to resample a dataframe to a higher timeframe and merge the resampled dataframe back into the original dataframe. This is an alternative approach to using informative pairs and reduces the amount of data needed from the exchange (you don't need to download 4h candles in the below example).</p> <pre><code>from pandas import DataFrame\nfrom technical.util import resample_to_interval, resampled_merge\nimport technical.indicators as ftt\n\ntimeframe = '1h'\n\ndef populate_indicators(self, dataframe: DataFrame, metadata: dict) -&gt; DataFrame:\n\n # Resampling to 4h:\n dataframe_long = resample_to_interval(dataframe, 240) # 240 = 4 * 60 = 4h\n\n dataframe_long['cmf'] = ftt.chaikin_money_flow(dataframe_long)\n # Combine the 2 dataframes\n dataframe = resampled_merge(dataframe, dataframe_long, fill_na=True)\n\n\n # The resulting dataframe will have 5 resampled columns in addition to the regular columns,\n # following the template resample_&lt;interval_in_minutes&gt;_&lt;orig_column_name&gt;.\n # So in the above example, the column names would be:\n # ['resample_240_open', 'resample_240_high', 'resample_240_low','resample_240_close', 'resample_240_cmf']\n\n return dataframe\n</code></pre>"}]}
{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Technical","text":"<p>Technical is a companion project for Freqtrade. It includes technical indicators, as well as helpful utilities (e.g. timeframe resampling) aimed to assist in strategy development for Freqtrade.</p>"},{"location":"#what-does-it-do-for-you","title":"What does it do for you","text":"<p>Technical provides easy to use indicators, collected from all over github, as well as custom methods. Over time we plan to provide a simple API wrapper around TA-Lib, PyTi and others, as we find them. So you have one place, to find 100s of indicators.</p>"},{"location":"#custom-indicators","title":"Custom indicators","text":"<ul> <li>Consensus - an indicator which is based on a consensus model, across several indicators you can easily customize these. It is based on the TradingView buy/sell graph. - MovingAverage Consensus - Oscillator Consensus - Summary Consensus</li> <li>vfi - a modified version of On-Balance Volume (OBV) created by Markos Katsanos that gives better interpretation of current market trend.</li> <li>mmar - an indicator that uses multiple MAs of different length to categorize the market trend into 4 different categories</li> <li>madrid_sqz - an indicator that uses multiple MAs to categorize the market trend into 6 different categories and to spot a squeeze</li> <li>stc</li> <li>ichimoku cloud</li> <li>volume weighted moving average - a variation of the Simple Moving Average (SMA) that taking into account both price and volume</li> <li>laguerre - an indicator developed by John Ehlers as a way to minimize both the noise and lag of the regular RSI</li> <li>vpci</li> <li>trendlines - 2 different algorithms to calculate trendlines</li> <li>fibonacci_retracements - an indicator showing the fibonacci level which each candle exceeds</li> <li>pivots points</li> <li>TKE Indicator - Arithmetical mean of 7 oscilators</li> <li>Volume Weighted MACD - Volume Weighted MACD indicator</li> <li>RMI - Relative Momentum indicator</li> <li>VIDYA - Variable Index Dynamic Average</li> <li>MADR - Moving Average Deviation Rate</li> <li>SSL - SSL Channel</li> <li>PMAX - PMAX indicator</li> <li>ALMA - Arnaud Legoux Moving Average</li> </ul>"},{"location":"#utilities","title":"Utilities","text":"<ul> <li>resample - easily resample your dataframe to a larger interval</li> <li>merge - merge your resampled dataframe into your original dataframe, so you can build triggers on more than 1 interval!</li> </ul>"},{"location":"#wrapped-indicators","title":"Wrapped Indicators","text":"<p>The following indicators are available and have been 'wrapped' to be used on a dataframe with the standard open/close/high/low/volume columns:</p> <ul> <li>chaikin_money_flow - Chaikin Money Flow, requires dataframe and period</li> <li>accumulation_distribution - requires a dataframe</li> <li>osc - requires a dataframe and the periods</li> <li>atr - dataframe, period, field</li> <li>atr_percent - dataframe, period, field</li> <li>bollinger_bands - dataframe, period, stdv, field, prefix</li> <li>cmo - dataframe, period, field</li> <li>cci - dataframe, period</li> <li>williams percent</li> <li>momentum oscillator</li> <li>hull moving average</li> <li>ultimate oscillator</li> <li>sma</li> <li>ema</li> <li>tema</li> </ul> <p>We will try to add more and more wrappers as we get to it, but please be patient or help out with PR's! It's super easy, but also super boring work.</p>"},{"location":"#usage","title":"Usage","text":"<p>to use the library, please install it with pip</p> <pre><code>pip install technical\n</code></pre> <p>To get the latest version, install directly from github:</p> <pre><code>pip install git+https://github.com/freqtrade/technical\n</code></pre> <p>and then import the required packages</p> <pre><code>from technical.indicators import accumulation_distribution, ...\nfrom technical.util import resample_to_interval, resampled_merge\n\n# Assuming 1h dataframe -resampling to 4h:\ndataframe_long = resample_to_interval(dataframe, 240) # 240 = 4 * 60 = 4h\n\ndataframe_long['rsi'] = ta.RSI(dataframe_long)\n# Combine the 2 dataframes\ndataframe = resampled_merge(dataframe, dataframe_long, fill_na=True)\n\n\"\"\"\nThe resulting dataframe will have 5 resampled columns in addition to the regular columns,\nfollowing the template resample_&lt;interval_in_minutes&gt;_&lt;orig_column_name&gt;.\nSo in the above example:\n['resample_240_open', 'resample_240_high', 'resample_240_low','resample_240_close', 'resample_240_rsi']\n\"\"\"\n</code></pre>"},{"location":"#contributions","title":"Contributions","text":"<p>We will happily add your custom indicators to this repo! Just clone this repository and implement your favorite indicator to use with Freqtrade and create a Pull Request.</p> <p>Have fun!</p>"},{"location":"developer/","title":"Developer documentation","text":"<p>This page is intended for developers of the <code>technical</code> library, people who want to contribute to the <code>technical</code> codebase or documentation, or people who want to understand the source code of the application they're running.</p> <p>All contributions, bug reports, bug fixes, documentation improvements, enhancements and ideas are welcome. We track issues on GitHub. For generic questions, please use the discord server, where you can ask questions.</p>"},{"location":"developer/#releases","title":"Releases","text":"<p>Bump the <code>__version__</code> naming in <code>technical/__init__.py</code> and create a new release on github with a matching tag.</p> <p>Note</p> <p>Version numbers must follow allowed versions from PEP0440 to avoid failures pushing to pypi.</p>"},{"location":"developer/#pypi","title":"Pypi","text":"<p>Pypi releases happen automatically on a new release through github actions.</p>"},{"location":"general-usage/","title":"General Usage","text":"<p>After installation, technical can be imported and used in your code.</p> <p>We recommend to import freqtrade.indicators as ftt to avoid conflicts with other libraries, and to help determining where indicator calculations came from.</p> <pre><code>import technical.indicators as ftt\n\n# The indicator calculations can now be used as follows:\n\ndataframe['cmf'] = ftt.chaikin_money_flow(dataframe)\n</code></pre>"},{"location":"general-usage/#indicator-functions","title":"Indicator functions","text":"<p>All built in indicators are designed to work with a pandas DataFrame as provided by freqtrade, containing the standard columns: open, high, low, close and volume. This dataframe should be provided as the first argument to the indicator function. Depending on the indicator, additional parameters may be required.</p>"},{"location":"general-usage/#return-type","title":"Return type","text":"<p>Depending on the indicator, the return type may be a pandas Series, a tuple of pandas Series, or a pandas DataFrame.</p>"},{"location":"general-usage/#resample-to-interval","title":"Resample to interval","text":"<p>The helper methods <code>resample_to_interval</code> and <code>resampled_merge</code> are used to resample a dataframe to a higher timeframe and merge the resampled dataframe back into the original dataframe. This is an alternative approach to using informative pairs and reduces the amount of data needed from the exchange (you don't need to download 4h candles in the below example).</p> <pre><code>from pandas import DataFrame\nfrom technical.util import resample_to_interval, resampled_merge\nimport technical.indicators as ftt\n\ntimeframe = '1h'\n\ndef populate_indicators(self, dataframe: DataFrame, metadata: dict) -&gt; DataFrame:\n\n # Resampling to 4h:\n dataframe_long = resample_to_interval(dataframe, 240) # 240 = 4 * 60 = 4h\n\n dataframe_long['cmf'] = ftt.chaikin_money_flow(dataframe_long)\n # Combine the 2 dataframes\n dataframe = resampled_merge(dataframe, dataframe_long, fill_na=True)\n\n\n # The resulting dataframe will have 5 resampled columns in addition to the regular columns,\n # following the template resample_&lt;interval_in_minutes&gt;_&lt;orig_column_name&gt;.\n # So in the above example, the column names would be:\n # ['resample_240_open', 'resample_240_high', 'resample_240_low','resample_240_close', 'resample_240_cmf']\n\n return dataframe\n</code></pre>"}]}

0 comments on commit d9c0fcd

Please sign in to comment.