エントリー戦略アイデア集‐エラーとなるパターン - stockautoflow/stockautov3 GitHub Wiki

はい、ご質問ありがとうございます。

TypeError: ... got an unexpected keyword argument 'value' というエラーは、type: "crossover" または type: "crossunder" を使って、インジケーターと特定の数値(固定値)を直接比較しようとしている戦略で発生します。

現在のバックテストシステム(btrader_strategy.py)では、2つのインジケーター同士を比較することはできますが、インジケーターと固定値のクロスを判定するロジックが実装されていないため、このエラーが発生します。

sample_entry_conditions.md の中で、このエラーを引き起こすのは以下の戦略です。

  • 戦略 18. ADX(低) + ADX(低) + MACDゼロクロス

    • 原因: MACDと数値の 0 を直接クロス比較しているため。
    • 該当箇所:
      indicator2: { name: "values", value: 0 } 
      
  • 戦略 25. MACD + Stochastic + RSI

    • 原因: RSIと数値の 30 および 70 を直接クロス比較しているため。
    • 該当箇所:
      indicator2: { name: "values", value: 30 }
      ...
      indicator2: { name: "values", value: 70 }
      
  • 戦略 26. Bollinger + EMA + MACD

    • 原因: MACDと数値の 0 を直接クロス比較しているため。
    • 該当箇所:
      indicator2: { name: "values", value: 0 }
      

なお、現在Canvasに表示されている run_all_strategies.py (修正版 v2.0) のコードには、これらの未サポートの戦略を自動的に検出し、エラーで停止する代わりにスキップする機能が既に追加されています。そのため、このスクリプトを実行すると、ログに警告が表示された上で、これらの戦略を除いたバックテストが継続されます。