1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Quantopianの損切り注文でエラーが出る

Posted at

#問題
先日書いた「Quantopian事始め」の記事で、期間を長くしてバックテストを実行しようとするとなぜか以下のエラーエッセージにぶち当たる。(3ヶ月くらいの期間で実行すると回る。)

スクリーンショット 2019-01-22 13.10.29.png

BadOrderParameters: Attempted to place an order with a stop price of nan

どうやら損切り注文の部分で、なんかしらの銘柄の株価を取得できず、損切り価格の値がNanになっているために怒られているらしい。

#対策
損切り注文の部分でcan_trade()を使って、銘柄の取引が可能である場合に注文を実行するようにする。

if (position > 0) & (data.can_trade(stock)):  
            order_target_percent(stock, 0, style=StopOrder(price - (price*0.005)))

#結果
無事直近3年でもバックテストが回った。(結果はさておき)

スクリーンショット 2019-01-22 14.04.47.png

can_trade関数は偉大すぎるので、基本的に注文を実装する時には適用した方がいいのかもしれない。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?