【Python】【トラリピ】必要資金をPythonで算出してみる

Pythonを使って、トラリピで必要になる資金を算出してみました^_^ 単一通貨ペア、複数通貨ペアに対応しています。 算出はトラリピの試算表使えばいいし、エクセルでも出せますが、Pythonの勉強の一環として作ってみました。 作る中でトラリピの理解も深まったので良かったと思います^_^ 下手書きしてるので、効率の良いプログラムではないですが、私のような初心者の方には理解しやすいと思います笑 結果はトラリピ試算表と見比べて”だいたい”正しい(※a)ことは確認していますが、責任は持てないので、正しいかどうかはちゃんとご自身でチェックして下さいね^_^ ※a : トラリピ試算表とちょっとズレます。試算表の方がより多くの資金が必要な結果になることがあります(←重要)。実際、ギリギリな資産では運用しないと思うので、あくまで目安として使うのがよろしいと思います。 環境 Python 3.7 プログラム import numpy as np import pandas as pd import pandas_datareader.data as pdr import datetime as dt # 最新のレートを取得する end = dt.date.today() # 本日まで start = end - dt.timedelta(days=30) # 最新のデータが本日付けであるとは限らないので、とりあえず30日前までのデータを取り、その中で最新データを引用する tickerlist = ['DEXJPUS','DEXUSAL','DEXUSNZ','DEXCAUS'] # 取得するtickerのlist # tickerlist = ['DEXJPUS'] # 取得するtickerのlist # DEXJPUS : JPY/USD # DEXUSAL : USD/AUD # DEXUSNZ : USD/NZD # DEXCAUS : CAD/USD # DataReaderからレートを取得 df0 = pdr....

2020/07/16 · Last updated on 2023/09/22 · 2 min · 349 words

【Python】【Pandas】ilocでエラー IndexError: single positional indexer is out-of-bounds

環境 Python 3.7 pandas 0.24.2 (iOSのアプリ Carnetsで動作) エラー内容 --------------------------------------------------------------------------- IndexError Traceback (most recent call last) <ipython-input-1-f4a3d43733da> in <module> ---> 47 JPYUSD = df0.iloc[-1]['DEXJPUS'] 48 print('Currency JPY/USD : '+str(JPYUSD)) 49 • • • IndexError: single positional indexer is out-of-bounds エラーになった経緯 PandasDataReaderで取得したデータをdf0に格納し、iloc[-1]で’DEXJPUS’列の最終行のデータを取得しようとしたらエラーになった 原因 以下のようにDataFrameが空だったから print(df0)で確認 ilocはDataFrameが空だとダメっぽい Empty DataFrame Columns: [DEXJPUS, DEXUSAL, DEXUSNZ, DEXCAUS, JPYAUD, JPYCAD] Index: [] 対策 DataFrameに値を入れておく!(emptyにしない) 実際対策したこと days=10ではデータが無くてemptyだった様なので、30に増やしたらデータが入った様なので解決した 当該のプログラム Pandasdatareaderを使ってFREDから為替のデータを取得するプログラムです(現在からn日前のデータ取得) 下のプログラムだとdays=10ですので10日前までのデータを取得しようと動きますが、FREDでの最新データが2020/07/02(2020/07/13時点)なので7/13-7/2=11日前となり10日前までだとデータが取れません。なのでこのままコピペしたら表題のエラーになります。 days=30(1ヶ月前)くらい余裕を持っておけば多分取得できます。(実際やった対策がこれ) FREDさんが1ヶ月更新してくれなかったらダメですが! import numpy as np import pandas as pd import pandas_datareader....

2020/07/13 · Last updated on 2020/07/13 · 1 min · 153 words