# 2019/10/19 @ finpy Quantopian 久しぶりに触ったメモ
###### tags: `quantopian` `finpy`
2019/10/19 @ finpy
## Docs が充実していた
[Quantopian Docs: Documentation Home](https://www.quantopian.com/docs/index)
[Quantopian Docs: API Reference Overview](https://www.quantopian.com/docs/api-reference/overview)
[Quantopian Docs: Cookbook Overview](https://www.quantopian.com/docs/recipes/overview#cookbook-overview)
## え?いつの間に自分のデータをUploadできるようになっていた?
https://www.quantopian.com/custom-datasets
[Quantopian Docs: Self-Serve Data](https://www.quantopian.com/docs/user-guide/tools/self-serve)
+ Research, IDE 両方で使える
+ とりあえず自分だけ使える
+ 自分が作ったノートや戦略をシェアしても、データを使えるのはUplpadした本人だけ
+ 一日一行、CSVでコンマセパレート,少なくとも3コラムのデータ(date, asset, value)
+ date: 2018-01-01, 20180101, 01/01/2018, 1/1/2018.どれでも可。
+ 絶対日付。Datetimeはサポートしてない(いまのところ)
+ 2002年以前は無視される
+ dateの NaN はエラーになる
+ (営業日のコトは書いてない。米営業日にフォローしろとか書いてない。どうするの?)
+ asset: Quantopianにsymbolに 一致するものだけ。
+ values: あとのコラムはいくつでもOK。 Numeric / string / date (tz なし) / datetime (UTC) / Bool
+ 例:
```
date,symbol,signal1,signal2
2014-01-01,TIF,1204.5,0
2014-01-02,TIF,1225,0.5
2014-01-03,TIF,1234.5,0
2014-01-06,TIF,1246.3,0.5
2014-01-07,TIF,1227.5,0
```
## やってみた
1. VIX ではなく VXX を書いて、データをUploadすればいいのでは?と思ってやってみた
3. [CBOEからVix Historical DataをCSVでダウンロード](http://www.cboe.com/products/vix-index-volatility/vix-options-and-futures/vix-index/vix-historical-data)
4. 1行目は日付が入っていたのでそのまま
5. 2行目にsymbolというコラム名で **VXX**という列を作り全行に挿入
6. Uploadしてみる
7. エラー

1. Vix Open などなどを vixopen に変える以下同文
2. 各列のデータ型を聞かれるので、入れる

1. FTP経由やPublic URLでもいいらしい、へー。とりあえずNo Live Dataを選ぶ

1. いけたw


```python=
from quantopian.pipeline import Pipeline
from quantopian.research import run_pipeline
from quantopian.pipeline.data.user_53a9f7f7a254c3731a000070 import mytestvixdata
from quantopian.pipeline.data.builtin import USEquityPricing
from quantopian.pipeline.factors import SimpleMovingAverage
from quantopian.pipeline.filters import StaticAssets
my_symbols = StaticAssets(symbols(["AAPL", "VXX"]))
close = USEquityPricing.close
pipe = Pipeline(
columns={
'my_dataset': mytestvixdata.vixopen.latest,
'close':close.latest,
},
#screen=mytestvixdata.vixopen.latest.notnull()
screen=my_symbols,
)
df = run_pipeline(pipe, '2019-08-02', '2019-10-18')
df.tail()
```
## メモ
+ Pipelineを走らせて、結果を得るがとても時間がかかる。
+ `from quantopian.pipeline.data.user_53a9f7f7a254c3731a000070 import mytestvixdata` の部分は、自分のデータのリストをダブルクリックすれば確認できます。
