{
  "id": 299458,
  "title": "Share My Own Pipeline",
  "url": "/competitions/g-research-crypto-forecasting/discussion/299458",
  "author_name": "",
  "post_date": "2022-01-08T05:47:39.969877400Z",
  "votes": 14,
  "comment_count": 4,
  "views": 0,
  "content": "<h2><strong>Please Upvote if You Learn Anything</strong>👍👍👍</h2>\n<h2>Motivation</h2>\n<p>I'm trying to do this competition for less than a month. And this is the pipeline I'm gonna do.</p>\n<h2>Pipeline</h2>\n<ul>\n<li><p><strong>Data Loading from a preprocessed dataset(compressed and target reconstructed)</strong> (<a href=\"https://www.kaggle.com/axzhang/fork-of-dataprepare2\" target=\"_blank\">https://www.kaggle.com/axzhang/fork-of-dataprepare2</a>)</p></li>\n<li><p><strong>Define the Cross-Validation Pipeline since LB is meaningless</strong> </p>\n<ul>\n<li>Standard TimeSeriesSplit. <a href=\"https://www.kaggle.com/axzhang/pipeline-building-crossvalidation\" target=\"_blank\">https://www.kaggle.com/axzhang/pipeline-building-crossvalidation</a>. However, I don't want to use this because I think it didn't leverage most of the data. Instead, I proposed to use the PurgedKFold method.</li>\n<li>PurgedKFold Method: <a href=\"https://www.kaggle.com/axzhang/pipeline-building-purgedkfold\" target=\"_blank\">https://www.kaggle.com/axzhang/pipeline-building-purgedkfold</a></li></ul></li>\n<li><p><strong>Define features for each asset</strong> </p>\n<ul>\n<li>Continuous features such as technical analysis.</li>\n<li>Most features depend on a number of the looking-back window such as moving average. We should choose the window to use according to </li>\n<li>1) <strong>momentum</strong>: the feature that has a positive correlation with the target.</li>\n<li>2) <strong>mean-reversion</strong>: the feature that has a negative correlation with the target.</li>\n<li>Sparse features such as some break events.</li>\n<li>Bear-Bull Market indicator: This kind of indicator is too sparse for minute-level data. Better train a different model for each type of market.</li>\n<li>Trendy Oscillator</li></ul></li>\n<li><p>A template to find the optimal paramter for those features could be find here <a href=\"https://www.kaggle.com/axzhang/pipeline-building-featureengineering-stage1\" target=\"_blank\">https://www.kaggle.com/axzhang/pipeline-building-featureengineering-stage1</a></p></li>\n<li><p>A template the use those features and boost the result could be found here <a href=\"https://www.kaggle.com/axzhang/pipeline-building-featureengineering-stage2\" target=\"_blank\">https://www.kaggle.com/axzhang/pipeline-building-featureengineering-stage2</a></p></li>\n<li><p><strong>Train an asset-specific model using GappedTimeSeries to avoid overfitting to a specific time period.</strong> </p>\n<ul>\n<li>Each model should be weighted according to some weights (considering time and performance in the validation set)</li>\n<li>For some assets like <strong>Maker</strong>, I found that there are lots of gap in the datasets. Currently, we skip them.</li></ul></li>\n<li><p>LGB model using PurgedKFold: <a href=\"https://www.kaggle.com/axzhang/pipeline-building-purgedkfold\" target=\"_blank\">https://www.kaggle.com/axzhang/pipeline-building-purgedkfold</a></p></li>\n<li><p>LGB model using TimeSeriesSplit:  <a href=\"https://www.kaggle.com/axzhang/pipeline-building-crossvalidation\" target=\"_blank\">https://www.kaggle.com/axzhang/pipeline-building-crossvalidation</a></p>\n<ul>\n<li>Using external datasets from Binance to fill the <strong>NaN</strong>s (TODO)</li></ul></li>\n<li><p><strong>Train a asset-agostic model using all the same cross-validation method.</strong> (<strong>TODO</strong>)</p>\n<ul>\n<li>Reasons 1) For minute-level data, I believe there are common patterns for all assets because of the micro-structure of the market is universally similar. </li>\n<li>Reasons 2) The target is constructed using all sets. So somehow they are correlated.</li>\n<li>Avoid overfitting: we should do factor-neutralization for each feature since 1) each feature has a different scale and 2) we don't want to let the model overfit one asset.</li></ul></li>\n<li><p><strong>Massive Parameter Tuning</strong> (<strong>TODO</strong>)</p>\n<ul>\n<li>Using HPO package</li></ul></li>\n</ul>\n<p><strong>If You Have Any Question, Pleas Comment And Lets Discuss!</strong><br>\nI highly recommend a book for financial forecasting using machine learning. Most of my work is inspired by this book.<br>\nRef.<br>\nMörke, M., 2019. Marcos López de Prado: Advances in financial machine learning.</p>",
  "messages": [
    {
      "id": "1642163",
      "postDate": "01/08/2022 05:47:39",
      "content": "<h2><strong>Please Upvote if You Learn Anything</strong>👍👍👍</h2>\n<h2>Motivation</h2>\n<p>I'm trying to do this competition for less than a month. And this is the pipeline I'm gonna do.</p>\n<h2>Pipeline</h2>\n<ul>\n<li><p><strong>Data Loading from a preprocessed dataset(compressed and target reconstructed)</strong> (<a href=\"https://www.kaggle.com/axzhang/fork-of-dataprepare2\" target=\"_blank\">https://www.kaggle.com/axzhang/fork-of-dataprepare2</a>)</p></li>\n<li><p><strong>Define the Cross-Validation Pipeline since LB is meaningless</strong> </p>\n<ul>\n<li>Standard TimeSeriesSplit. <a href=\"https://www.kaggle.com/axzhang/pipeline-building-crossvalidation\" target=\"_blank\">https://www.kaggle.com/axzhang/pipeline-building-crossvalidation</a>. However, I don't want to use this because I think it didn't leverage most of the data. Instead, I proposed to use the PurgedKFold method.</li>\n<li>PurgedKFold Method: <a href=\"https://www.kaggle.com/axzhang/pipeline-building-purgedkfold\" target=\"_blank\">https://www.kaggle.com/axzhang/pipeline-building-purgedkfold</a></li></ul></li>\n<li><p><strong>Define features for each asset</strong> </p>\n<ul>\n<li>Continuous features such as technical analysis.</li>\n<li>Most features depend on a number of the looking-back window such as moving average. We should choose the window to use according to </li>\n<li>1) <strong>momentum</strong>: the feature that has a positive correlation with the target.</li>\n<li>2) <strong>mean-reversion</strong>: the feature that has a negative correlation with the target.</li>\n<li>Sparse features such as some break events.</li>\n<li>Bear-Bull Market indicator: This kind of indicator is too sparse for minute-level data. Better train a different model for each type of market.</li>\n<li>Trendy Oscillator</li></ul></li>\n<li><p>A template to find the optimal paramter for those features could be find here <a href=\"https://www.kaggle.com/axzhang/pipeline-building-featureengineering-stage1\" target=\"_blank\">https://www.kaggle.com/axzhang/pipeline-building-featureengineering-stage1</a></p></li>\n<li><p>A template the use those features and boost the result could be found here <a href=\"https://www.kaggle.com/axzhang/pipeline-building-featureengineering-stage2\" target=\"_blank\">https://www.kaggle.com/axzhang/pipeline-building-featureengineering-stage2</a></p></li>\n<li><p><strong>Train an asset-specific model using GappedTimeSeries to avoid overfitting to a specific time period.</strong> </p>\n<ul>\n<li>Each model should be weighted according to some weights (considering time and performance in the validation set)</li>\n<li>For some assets like <strong>Maker</strong>, I found that there are lots of gap in the datasets. Currently, we skip them.</li></ul></li>\n<li><p>LGB model using PurgedKFold: <a href=\"https://www.kaggle.com/axzhang/pipeline-building-purgedkfold\" target=\"_blank\">https://www.kaggle.com/axzhang/pipeline-building-purgedkfold</a></p></li>\n<li><p>LGB model using TimeSeriesSplit:  <a href=\"https://www.kaggle.com/axzhang/pipeline-building-crossvalidation\" target=\"_blank\">https://www.kaggle.com/axzhang/pipeline-building-crossvalidation</a></p>\n<ul>\n<li>Using external datasets from Binance to fill the <strong>NaN</strong>s (TODO)</li></ul></li>\n<li><p><strong>Train a asset-agostic model using all the same cross-validation method.</strong> (<strong>TODO</strong>)</p>\n<ul>\n<li>Reasons 1) For minute-level data, I believe there are common patterns for all assets because of the micro-structure of the market is universally similar. </li>\n<li>Reasons 2) The target is constructed using all sets. So somehow they are correlated.</li>\n<li>Avoid overfitting: we should do factor-neutralization for each feature since 1) each feature has a different scale and 2) we don't want to let the model overfit one asset.</li></ul></li>\n<li><p><strong>Massive Parameter Tuning</strong> (<strong>TODO</strong>)</p>\n<ul>\n<li>Using HPO package</li></ul></li>\n</ul>\n<p><strong>If You Have Any Question, Pleas Comment And Lets Discuss!</strong><br>\nI highly recommend a book for financial forecasting using machine learning. Most of my work is inspired by this book.<br>\nRef.<br>\nMörke, M., 2019. Marcos López de Prado: Advances in financial machine learning.</p>",
      "rawMarkdown": "## **Please Upvote if You Learn Anything**👍👍👍\n\n## Motivation\n\nI'm trying to do this competition for less than a month. And this is the pipeline I'm gonna do.\n\n## Pipeline\n- **Data Loading from a preprocessed dataset(compressed and target reconstructed)** (https://www.kaggle.com/axzhang/fork-of-dataprepare2)\n- **Define the Cross-Validation Pipeline since LB is meaningless** \n  - Standard TimeSeriesSplit. https://www.kaggle.com/axzhang/pipeline-building-crossvalidation. However, I don't want to use this because I think it didn't leverage most of the data. Instead, I proposed to use the PurgedKFold method.\n  - PurgedKFold Method: https://www.kaggle.com/axzhang/pipeline-building-purgedkfold\n\n- **Define features for each asset** \n  - Continuous features such as technical analysis.\n  - Most features depend on a number of the looking-back window such as moving average. We should choose the window to use according to \n    * 1) **momentum**: the feature that has a positive correlation with the target.\n    * 2) **mean-reversion**: the feature that has a negative correlation with the target.\n  - Sparse features such as some break events.\n    - Bear-Bull Market indicator: This kind of indicator is too sparse for minute-level data. Better train a different model for each type of market.\n    - Trendy Oscillator\n\n- A template to find the optimal paramter for those features could be find here https://www.kaggle.com/axzhang/pipeline-building-featureengineering-stage1\n- A template the use those features and boost the result could be found here https://www.kaggle.com/axzhang/pipeline-building-featureengineering-stage2\n     \n- **Train an asset-specific model using GappedTimeSeries to avoid overfitting to a specific time period.** \n - Each model should be weighted according to some weights (considering time and performance in the validation set)\n - For some assets like **Maker**, I found that there are lots of gap in the datasets. Currently, we skip them.\n- LGB model using PurgedKFold: https://www.kaggle.com/axzhang/pipeline-building-purgedkfold\n- LGB model using TimeSeriesSplit:  https://www.kaggle.com/axzhang/pipeline-building-crossvalidation\n     - Using external datasets from Binance to fill the **NaN**s (TODO)\n- **Train a asset-agostic model using all the same cross-validation method.** (**TODO**)\n - Reasons 1) For minute-level data, I believe there are common patterns for all assets because of the micro-structure of the market is universally similar. \n - Reasons 2) The target is constructed using all sets. So somehow they are correlated.\n - Avoid overfitting: we should do factor-neutralization for each feature since 1) each feature has a different scale and 2) we don't want to let the model overfit one asset.\n \n- **Massive Parameter Tuning** (**TODO**)\n    * Using HPO package\n\n\n**If You Have Any Question, Pleas Comment And Lets Discuss!**\nI highly recommend a book for financial forecasting using machine learning. Most of my work is inspired by this book.\nRef.\nMörke, M., 2019. Marcos López de Prado: Advances in financial machine learning.",
      "votes": null
    },
    {
      "id": "1642169",
      "postDate": "01/08/2022 05:54:30",
      "content": "<p>Also, I'm looking for a teammate who wants to complete this with me. Please contact me via email at adamzhang1679@gmail.com.</p>",
      "rawMarkdown": "Also, I'm looking for a teammate who wants to complete this with me. Please contact me via email at adamzhang1679@gmail.com.",
      "votes": null
    },
    {
      "id": "1642343",
      "postDate": "01/08/2022 09:36:31",
      "content": "<p>Very nice pipeline. I especially like the torough approach to technical indicators. </p>\n<p>Some questions about FE:</p>\n<ul>\n<li>did you manage to build the features in an online fashion for submission ?</li>\n<li>if you plan to build an asset agnostic model, what is your strategy for building common features ?</li>\n</ul>\n<p>Some about performance:</p>\n<ul>\n<li>I see you have different performance across folds. (I have the same problem). Does it bother you ? how do you plan to deal with this ? </li>\n<li>Did you test convergence in the fold (trying different seeds) ? </li>\n</ul>\n<p>PS: if you don't know Lopez de Prado has a second book (Machine Learnig for Asset Managers) and lots of publications available on SSRN.</p>",
      "rawMarkdown": "Very nice pipeline. I especially like the torough approach to technical indicators. \n\nSome questions about FE:\n- did you manage to build the features in an online fashion for submission ?\n- if you plan to build an asset agnostic model, what is your strategy for building common features ?\n\nSome about performance:\n- I see you have different performance across folds. (I have the same problem). Does it bother you ? how do you plan to deal with this ? \n- Did you test convergence in the fold (trying different seeds) ? \n\nPS: if you don't know Lopez de Prado has a second book (Machine Learnig for Asset Managers) and lots of publications available on SSRN.",
      "votes": null
    },
    {
      "id": "1642931",
      "postDate": "01/08/2022 20:04:53",
      "content": "<ul>\n<li><p>did you manage to build the features in an online fashion for submission ?<br>\nI think in this competition, we don't need to build an online version? because the test dataset is a two-week data frame. So I think we don't need to do that right? Please correct me if I'm wrong.</p></li>\n<li><p>if you plan to build an asset agnostic model, what is your strategy for building common features?<br>\nCurrently, I think using all features for all assets. Neutralize them and do a feature selection using feature importance. Also, I'm considering fitting multiple models for different market type (trendy/non-trendy) using a trend filter. I will publish the results if it's helpful.</p></li>\n<li><p>I see you have different performances across folds. (I have the same problem). Does it bother you ? how do you plan to deal with this ?</p></li>\n</ul>\n<p>I think the performance diff in different folds is expected because the market changes so quickly and I don't think financial data is stationary at all. There are many regime shifts. The only thing we can do is to test the performance of the model under a specific market. That's why I'm doing a PurgedKFold validation instead of TimeSerisSplit validation. I manually classify the market into BULL, BEAR, NEUTRAL. In this way, I can have a better understanding of the model. Also, when I verify a new improvement, say a new feature, I can understand how does it help my model.</p>\n<ul>\n<li>Did you test convergence in the fold (trying different seeds) ?<br>\nGood advice. I haven't had time to fine-tune each model. My current plan is to finish all pipelines and then focus on each model. You can see that my model parameters are very poorly designed. I think you have a good point to test the convergence. I didn't know this but this is definitely usefull in non-stationary data.</li>\n</ul>",
      "rawMarkdown": "did you manage to build the features in an online fashion for submission ?\nI think in this competition, we don't need to build an online version? because the test dataset is a two-week data frame. So I think we don't need to do that right? Please correct me if I'm wrong.\n\n- if you plan to build an asset agnostic model, what is your strategy for building common features?\nCurrently, I think using all features for all assets. Neutralize them and do a feature selection using feature importance. Also, I'm considering fitting multiple models for different market type (trendy/non-trendy) using a trend filter. I will publish the results if it's helpful.\n\n- I see you have different performances across folds. (I have the same problem). Does it bother you ? how do you plan to deal with this ?\n\nI think the performance diff in different folds is expected because the market changes so quickly and I don't think financial data is stationary at all. There are many regime shifts. The only thing we can do is to test the performance of the model under a specific market. That's why I'm doing a PurgedKFold validation instead of TimeSerisSplit validation. I manually classify the market into BULL, BEAR, NEUTRAL. In this way, I can have a better understanding of the model. Also, when I verify a new improvement, say a new feature, I can understand how does it help my model.\n\n- Did you test convergence in the fold (trying different seeds) ?\nGood advice. I haven't had time to fine-tune each model. My current plan is to finish all pipelines and then focus on each model. You can see that my model parameters are very poorly designed. I think you have a good point to test the convergence. I didn't know this but this is definitely usefull in non-stationary data.",
      "votes": null
    },
    {
      "id": "1650528",
      "postDate": "01/15/2022 05:16:19",
      "content": "<p>Thanks for sharing, I learned some tricks and useful methods from it! 😃</p>",
      "rawMarkdown": "Thanks for sharing, I learned some tricks and useful methods from it! 😃",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 1642169,
      "author_name": "axzhang",
      "author_url": "",
      "post_date": "01/08/2022 05:54:30",
      "content": "<p>Also, I'm looking for a teammate who wants to complete this with me. Please contact me via email at adamzhang1679@gmail.com.</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 1642343,
      "author_name": "lucasmorin",
      "author_url": "",
      "post_date": "01/08/2022 09:36:31",
      "content": "<p>Very nice pipeline. I especially like the torough approach to technical indicators. </p>\n<p>Some questions about FE:</p>\n<ul>\n<li>did you manage to build the features in an online fashion for submission ?</li>\n<li>if you plan to build an asset agnostic model, what is your strategy for building common features ?</li>\n</ul>\n<p>Some about performance:</p>\n<ul>\n<li>I see you have different performance across folds. (I have the same problem). Does it bother you ? how do you plan to deal with this ? </li>\n<li>Did you test convergence in the fold (trying different seeds) ? </li>\n</ul>\n<p>PS: if you don't know Lopez de Prado has a second book (Machine Learnig for Asset Managers) and lots of publications available on SSRN.</p>",
      "votes": null,
      "replies": [
        {
          "id": 1642931,
          "author_name": "axzhang",
          "author_url": "",
          "post_date": "01/08/2022 20:04:53",
          "content": "<ul>\n<li><p>did you manage to build the features in an online fashion for submission ?<br>\nI think in this competition, we don't need to build an online version? because the test dataset is a two-week data frame. So I think we don't need to do that right? Please correct me if I'm wrong.</p></li>\n<li><p>if you plan to build an asset agnostic model, what is your strategy for building common features?<br>\nCurrently, I think using all features for all assets. Neutralize them and do a feature selection using feature importance. Also, I'm considering fitting multiple models for different market type (trendy/non-trendy) using a trend filter. I will publish the results if it's helpful.</p></li>\n<li><p>I see you have different performances across folds. (I have the same problem). Does it bother you ? how do you plan to deal with this ?</p></li>\n</ul>\n<p>I think the performance diff in different folds is expected because the market changes so quickly and I don't think financial data is stationary at all. There are many regime shifts. The only thing we can do is to test the performance of the model under a specific market. That's why I'm doing a PurgedKFold validation instead of TimeSerisSplit validation. I manually classify the market into BULL, BEAR, NEUTRAL. In this way, I can have a better understanding of the model. Also, when I verify a new improvement, say a new feature, I can understand how does it help my model.</p>\n<ul>\n<li>Did you test convergence in the fold (trying different seeds) ?<br>\nGood advice. I haven't had time to fine-tune each model. My current plan is to finish all pipelines and then focus on each model. You can see that my model parameters are very poorly designed. I think you have a good point to test the convergence. I didn't know this but this is definitely usefull in non-stationary data.</li>\n</ul>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 1650528,
      "author_name": "",
      "author_url": "",
      "post_date": "01/15/2022 05:16:19",
      "content": "<p>Thanks for sharing, I learned some tricks and useful methods from it! 😃</p>",
      "votes": null,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "1642163": "## **Please Upvote if You Learn Anything**👍👍👍\n\n## Motivation\n\nI'm trying to do this competition for less than a month. And this is the pipeline I'm gonna do.\n\n## Pipeline\n- **Data Loading from a preprocessed dataset(compressed and target reconstructed)** (https://www.kaggle.com/axzhang/fork-of-dataprepare2)\n- **Define the Cross-Validation Pipeline since LB is meaningless** \n  - Standard TimeSeriesSplit. https://www.kaggle.com/axzhang/pipeline-building-crossvalidation. However, I don't want to use this because I think it didn't leverage most of the data. Instead, I proposed to use the PurgedKFold method.\n  - PurgedKFold Method: https://www.kaggle.com/axzhang/pipeline-building-purgedkfold\n\n- **Define features for each asset** \n  - Continuous features such as technical analysis.\n  - Most features depend on a number of the looking-back window such as moving average. We should choose the window to use according to \n    * 1) **momentum**: the feature that has a positive correlation with the target.\n    * 2) **mean-reversion**: the feature that has a negative correlation with the target.\n  - Sparse features such as some break events.\n    - Bear-Bull Market indicator: This kind of indicator is too sparse for minute-level data. Better train a different model for each type of market.\n    - Trendy Oscillator\n\n- A template to find the optimal paramter for those features could be find here https://www.kaggle.com/axzhang/pipeline-building-featureengineering-stage1\n- A template the use those features and boost the result could be found here https://www.kaggle.com/axzhang/pipeline-building-featureengineering-stage2\n     \n- **Train an asset-specific model using GappedTimeSeries to avoid overfitting to a specific time period.** \n - Each model should be weighted according to some weights (considering time and performance in the validation set)\n - For some assets like **Maker**, I found that there are lots of gap in the datasets. Currently, we skip them.\n- LGB model using PurgedKFold: https://www.kaggle.com/axzhang/pipeline-building-purgedkfold\n- LGB model using TimeSeriesSplit:  https://www.kaggle.com/axzhang/pipeline-building-crossvalidation\n     - Using external datasets from Binance to fill the **NaN**s (TODO)\n- **Train a asset-agostic model using all the same cross-validation method.** (**TODO**)\n - Reasons 1) For minute-level data, I believe there are common patterns for all assets because of the micro-structure of the market is universally similar. \n - Reasons 2) The target is constructed using all sets. So somehow they are correlated.\n - Avoid overfitting: we should do factor-neutralization for each feature since 1) each feature has a different scale and 2) we don't want to let the model overfit one asset.\n \n- **Massive Parameter Tuning** (**TODO**)\n    * Using HPO package\n\n\n**If You Have Any Question, Pleas Comment And Lets Discuss!**\nI highly recommend a book for financial forecasting using machine learning. Most of my work is inspired by this book.\nRef.\nMörke, M., 2019. Marcos López de Prado: Advances in financial machine learning.",
    "1642169": "Also, I'm looking for a teammate who wants to complete this with me. Please contact me via email at adamzhang1679@gmail.com.",
    "1642343": "Very nice pipeline. I especially like the torough approach to technical indicators. \n\nSome questions about FE:\n- did you manage to build the features in an online fashion for submission ?\n- if you plan to build an asset agnostic model, what is your strategy for building common features ?\n\nSome about performance:\n- I see you have different performance across folds. (I have the same problem). Does it bother you ? how do you plan to deal with this ? \n- Did you test convergence in the fold (trying different seeds) ? \n\nPS: if you don't know Lopez de Prado has a second book (Machine Learnig for Asset Managers) and lots of publications available on SSRN.",
    "1642931": "did you manage to build the features in an online fashion for submission ?\nI think in this competition, we don't need to build an online version? because the test dataset is a two-week data frame. So I think we don't need to do that right? Please correct me if I'm wrong.\n\n- if you plan to build an asset agnostic model, what is your strategy for building common features?\nCurrently, I think using all features for all assets. Neutralize them and do a feature selection using feature importance. Also, I'm considering fitting multiple models for different market type (trendy/non-trendy) using a trend filter. I will publish the results if it's helpful.\n\n- I see you have different performances across folds. (I have the same problem). Does it bother you ? how do you plan to deal with this ?\n\nI think the performance diff in different folds is expected because the market changes so quickly and I don't think financial data is stationary at all. There are many regime shifts. The only thing we can do is to test the performance of the model under a specific market. That's why I'm doing a PurgedKFold validation instead of TimeSerisSplit validation. I manually classify the market into BULL, BEAR, NEUTRAL. In this way, I can have a better understanding of the model. Also, when I verify a new improvement, say a new feature, I can understand how does it help my model.\n\n- Did you test convergence in the fold (trying different seeds) ?\nGood advice. I haven't had time to fine-tune each model. My current plan is to finish all pipelines and then focus on each model. You can see that my model parameters are very poorly designed. I think you have a good point to test the convergence. I didn't know this but this is definitely usefull in non-stationary data.",
    "1650528": "Thanks for sharing, I learned some tricks and useful methods from it! 😃"
  },
  "source": "meta"
}