概要
前回の記事で紹介したシステムトレードツールに新たな機能を追加しました。具体的には、ウィンドウにグラフの表示期間を設定する機能と、デフォルトで日付を表示する機能を追加しました。また、グラフの下部に表示される日付の表記も変更しました。
変更詳細
ウィンドウにグラフの表示期間を設定する機能
ユーザーはウィンドウで表示期間を設定することができ、その期間のグラフを表示させることが可能になりました。具体的には、開始日と終了日を指定することで、その期間のグラフを表示します。
デフォルトで日付を表示する機能
ウィンドウにデフォルトで日付が表示されるようになりました。具体的には、現在の日付がデフォルト値として設定されています。ユーザーが日付の入力欄に何も入力しなかった場合、このデフォルトの日付が使用されます。
<前回の表示>
<今回の表示>
グラフの下部に表示される日付の表記変更
グラフの下部に表示される日付の表記を変更しました。具体的な変更内容は以下の通りです。
<前回の表示>
<今回の表示>
プログラムの実装
以下に、追加したプログラムの一部を示します。
def on_click_execute():
entered_code = entry_code.get()
entered_start_date = entry_start_date.get()
entered_start_date = datetime.strptime(entered_start_date, "%Y,%m,%d")
# 日付のデフォルト値を現在の日付に設定
entered_date = datetime.now().strftime("%Y,%m,%d")
# 日付の入力欄が空でない場合は入力された値を使う
if entry_date.get() != "":
entered_date = entry_date.get()
entered_date = datetime.strptime(entered_date, "%Y,%m,%d")
-----------
-----------
# ラベル
label_code = tk.Label(root, text="株価コード:")
label_code.grid(row=0, column=0)
label_date = tk.Label(root, text="いつから(YYYY,MM,DD):")
label_date.grid(row=1, column=0)
label_date = tk.Label(root, text="いつまで(YYYY,MM,DD):")
label_date.grid(row=2, column=0)
# ペースト機能を有効にするためにEntryウィジェットにバインディングを追加
entry_code = tk.Entry(root)
entry_code.grid(row=0, column=1)
entry_code.bind("<Button-3>", lambda e: paste_text(entry_code)) # 右クリックでペーストできるように設定
entry_date = tk.Entry(root)
entry_date.grid(row=1, column=1)
entry_date.bind("<Button-3>", lambda e: paste_text(entry_date)) # 右クリックでペーストできるように設定
entry_date = tk.Entry(root)
entry_date.grid(row=2, column=1)
entry_date.bind("<Button-3>", lambda e: paste_text(entry_date)) # 右クリックでペーストできるように設定
# 入力フィールド
entry_code = tk.Entry(root)
entry_code.grid(row=0, column=1)
entry_start_date = tk.Entry(root)
entry_start_date.grid(row=1, column=1)
entry_start_date.insert(0, "2020,01,01") # デフォルトで2020年1月1日からの日付を挿入
entry_date = tk.Entry(root)
entry_date.grid(row=2, column=1)
entry_date.insert(0, datetime.now().strftime("%Y,%m,%d")) # 現在の日付を3番目の入力フィールドに挿入
# 実行ボタン
execute_button = tk.Button(root, text="実行", command=on_click_execute)
execute_button.grid(row=3, columnspan=3)
具体的なコードは、こちらのGitHubリポジトリをご覧ください。
ツールの使い方
ver-1と同様に、以下のリンクから詳細な使い方をご覧いただけます。 https://powerbalance-sp.com/?p=258
まとめ
今回のアップデートでは大きな機能追加はありませんでしたが、ユーザーがツールをより使いやすくするために、ウィンドウの入力箇所とグラフの表示方法を少し改善しました。
ご覧いただきありがとうございます。
コメント