Python関連のことを調べてみた2022年03月26日

Python関連のことを調べてみた2022年03月26日

AIトレードシステムのMT4埋め込み(3)

https://qiita.com/EasyCording/items/158c9a09a3f4db1efacc

# 状況

https://github.com/chanmoto/eurusd_pix2pix

昨日は、High-loバイナリーのエントリー部分を完成しました。
適当にGithubから、コードを頂きました。

# 苦労したこと
* セレニウムを全く知らないこと(やばめの金属化合物かと思いました。。。)
* XPATHの取り方が、まったく分かりませんでした。。。

# 結果
* BOPのバックテストでは5分足エントリで勝率60%
 → 実際のトレードでは、この閾値では、ほとんどサインが出なかった。

* サインの閾値範囲を、緩めてエントリーしたら、かなりの勝率で利益が取れた。
 → 調子に乗って、実弾10000円をエントリーして、夜中に持ち越ししたら、残高が0円になった。

# 反省点
* BOPで勝負をかけるのは、まだ早すぎる → signalと勝率についてのデータ収集を行い、統計的有意差を検証すること
* MT4については、1分足では危険すぎる → 1分、5分、1

元記事を表示

Microsoftのデータサイエンス初心者向けコースDay3:関係性を可視化

# Microsoftのデータサイエンス初心者向けコース(無料)3日目

https://github.com/microsoft/Data-Science-For-Beginners/blob/main/3-Data-Visualization/12-visualization-relationships/README.md

# データ可視化

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/409610/a429532e-1791-3f99-4eaa-7e5d72cb22a4.png)

# 対象読者

 Pythonとデータサイエンスに興味がある人。コードの意味を確認したい人。

# データ

今回も引き続き、米国農務省のデータセットから、様々な種類の蜂蜜の関係を示す興味深いビジュアライゼーションを発見してみましょう。

このデータセットには、約600の項目があり、米国州における蜂蜜の生産量が表示されています。そのため、例えば、1998年から2012年にかけて、ある州で生産された

元記事を表示

「YMM4」台本機能を使うと音声・テキストファイル同時読み込みができないのをPYTHONで何とかする。

# 便利なゆっくりMovieMaker4のちょっとした「落とし穴」
動画を作るのに、ゆっくりMovieMaker4の台本機能を使わせてもらってるのですが。
ちょっとした不便が生じるようになってしまいました。

# 音声付属のセリフテキストを読み込んでくれない…

例えばこういう状況の時…

“`dir : ./example
example ┳ Voice ┳ hoge.wav
┃ ┗ hoge.txt
┗ hoge.csv
“`

“`txt :hoge.txt
ほげに効く薬
“`

“`csv : hoge.csv
hoge,./example/Voice/hoge.wav
“`

今まで台本機能からhoge.csvを読み込みタイムラインに追加すると

音声ファイルのパス(./example/Voice/hoge.wav)を検出

./example/Voice/hoge.txt の有無を確認( 無ければパス名を表示 )

./example/Voice/hoge.txt から、テキストデータ「ほげに効く薬」を取

元記事を表示

Djangoの開発の流れをサラッと ~モデル作成まで~

# はじめに
– しっかり学びたい人はこの記事読むよりも公式リファレンス読む方が良いです。
– なぜその作業を行うかを重視しています。
– python3, venv導入が前提となっています。

## 環境の作成
“`
mkdir project -> projectディレクトリの作成
cd project -> projectディレクトリに移動

python3 -m venv project -> venvでprojectという名前の仮想環境を作る
source project/bin/activate -> 仮想環境に入る
“`

#### なぜ仮想環境を使うか?
仮想環境を作ることでバージョンが異なる環境を作ることができるため

“`
pip install -upgrade pip -> pipをアップデートする
pip install django -> Djangoをインストールする
“`

“`
django-admin startproject newproject -> newprojectというプロジェクトを作る
cd newproject -> n

元記事を表示

AWS SNSでeメールを送信する

### はじめに

前々から、AWS SNSについて学ぼうと思っていたので、今回記事にしてみました。

### AWS SNSとは

フルマネージド型のプッシュ型メッセージングサービス。
フルマネージド型サービスとはサービス提供以外にもAWS側が管理しているサービス。
サービスを利用することだけ考えればいいので、管理が楽。

### AWS SNSを実装する
まずはAWSのコンソール画面からSNSを検索。

![AWS-SNS説明資料1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1928016/c2cdfdcc-2ead-208e-3d6b-2ce4237833d5.png)

SNSの画面に遷移したら、トピックの作成をクリック。

>Amazon SNS トピックは、通信チャネルとして機能する論理アクセスポイントです。

![AWS-SNS説明資料2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1928016/

元記事を表示

【備忘録】Django IISデプロイ

## 経緯
社内本番環境へデプロイした際に、半日ほどはまったので、
対応した内容を個人的備忘録として残しておく。
他の環境に影響を与えないよう、仮想環境を使用。

## 参考にさせて頂いたサイト
1. DjangoのチュートリアルをIISにデプロイする①
https://qiita.com/reinexxx/items/ad60261815a5555e914e

2. Python(Django) をWindows+IISで動かす
https://qiita.com/miltood/items/14491e1da28bd953ee4c

## IISのインストール
なにはともあれインストールします。
インターネットインフォメーションサービスを選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2521517/d2832b3e-3d3f-ed36-3dae-481750a67fd1.png)

CGIを選択
![image.png](https://qiita-image-store.s3

元記事を表示

Scipyの階層クラスタリング結果をNewick形式に変換する

Scipyで階層クラスタリングを実行した時に、結果として出力されるデンドログラムをSeaviewのような系統樹ビューアで見れるようにしたいと思ったのでNewick形式での出力を試みた。

やり方を調べてみると、stackoverflowに今回の目的と同じことを質問している人がいて、回答に参考になる実装コードが提供されていた。

https://stackoverflow.com/questions/28222179/save-dendrogram-to-newick-format

以降、上記サイトのコードを参考に実装例と出力結果を記載する。

# コード実装例

クラスタリング結果のデンドログラムツリーは木構造ノードオブジェクト([ClusterNode](https://docs.scipy.org/doc/scipy/reference/generated/scipy.cluster.hierarchy.ClusterNode.html))で表現される。下記の実装(dendrogram2newick)では、木構造のルートノードから再帰的に子ノードを取得して、各ノードに対応するデー

元記事を表示

pandasデータフレーム特定列に対し、条件別で文字列から数値を抽出

↓コンペのデータ前処理で、処理時間のかかるコードを書いてしまったため、反省の意味を込めて共有。。
https://www.nishika.com/competitions/25/summary

# 1. 対象となる処理:
DataFrameのobject型pandas DataFrameにおいて、Object型(文字列型)である特定列から、数値のみ取り出す。

例: 和暦(平成20年, 令和1年)を、西暦(2008, 2019)のように変換。

# 2. 対象データのイメージ
以下です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/194473/cd864483-1e9b-18bb-3fd8-950abeda2be8.png)

# 3. 解決法
以下流れのコードを書きました。
70万行のデータですが、概算2秒弱ほどで処理終了いたしました。
変更前(4.に記載)のコードは10min(600秒)ほどかかりました。

1. 対象列(column)のuniqueな値をキー、
和暦と西

元記事を表示

【Python】アルゴリズム問題を解く際によく使う小技集

自分の備忘録もかねて随時追加していきます。
キーワードを書いておくのでそれでググれば詳細は出てくると思います。
▽:キーワードマーク

# 空白区切りの文字列を数値配列に変換
“`python
str_num = ‘1 2 3 4 5 6’

list_num = [int(x) for x in str_num.split()]

print(list_num)
# [1,2,3,4,5,6]
“`
▽内包表記

# 2次元配列の重複を削除
“`python
dup_list = [
[1,2],
[3,4],
[5,6],
[1,2],
[3,4]]

uni_list = list(map(list,set(map(tuple,dup_list))))

print(uni_list)
# [[1,2],
# [3,4],
# [5,6]]
“`
▽2次元配列 重複行削除

# 文字列を文字の配列に変換
“`python
word = ‘abcde’

word_list = list(word)
print(word_

元記事を表示

Django データベース作成について整理してみた

DjangoのDatabase作成方法を整理しました

プロジェクト作成からwebアプリケーションの作成までは次のサイトを参考に実施済みとなります
https://docs.djangoproject.com/ja/3.2/intro/tutorial01/

プロジェクトはmysite、webアプリケーションはtestで作成しています

## Databaseを作成するまでの流れ
Django経由でDatabaseを作成、変更する手順としては大まかに3工程発生します
![2021-11-30-17-43-09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1997750/b4ccd600-207f-344f-c181-f81b072011cf.png)

1. modelに作成したいテーブルの情報を記載
2. modelからmigrations(更新部分をまとめたもの)作成
3. migrationsを元にmigrateを実行し、Databaseを更新していくという流れです

またD

元記事を表示

RaspberryPi用MC33886でDCモータを制御してみる

# やったこと
 RaspberryPi用MC33886を使ってDCモータの回転数を制御した。

# 構成
– Raspberry Pi
– MC33886

元記事を表示

WSL2(Ubuntu20.04)+venv+pyBulletで深層強化学習のサンプルプログラムを動かす

# WSLとGUIの準備
PowerShellにてWSLのUbuntu20.04をインストールします。

“` bash
# PowerShellにて
$ wsl –list –online
$ wsl –install –d Ubuntu-20.04
“`

WSLはCUIのみなのでこのままではGUIが表示されません。
そのためXサーバーを動かすことでGUIを表示します。
VcXsrvの設定については下記をご参考にお願いします。

https://qiita.com/ryoi084/items/0dff11134592d0bb895c

# Python仮想環境
Python関連のパッケージのインストールはシステム全体に影響を与えるかもしれないので私はPythonの仮想環境(venv)を使っています。
“` bash
# WSLにて
$ python3 -V # pythonのバージョン確認
Python 3.8.10
$ sudo apt install python3.8-venv # 3.8用venvのインストール
$ python3 -m venv vTE

元記事を表示

Pythonで伊藤園優先株の謎をデータ分析

データ分析で遊んでみようと思いました。
そこで目をつけたのが伊藤園優先株です。

# はじめに
伊藤園は、普通株式と第一種優先株式を発行しています。
優先株の発行自体は珍しいものではありませんが、東証に上場している優先株は伊藤園くらいです。(米国株だとたくさんあります)

|伊藤園|普通株式|第一種優先株式|
|—|—|—|
|配当|普通配当|1.25倍の配当|
|議決権|○|×|
|株主優待|○|○|

後述のコードで描いた株価の推移はこちら
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122348/0df5b2be-45f2-cdea-729f-50d25018e6b3.png)

配当が多いかわりに議決権がないのが優先株です。
同じ会社ですから、業績などの株価を左右する**条件は同じなのに3倍以上の差**がついています。なぜでしょうか?
みんな、そんなに株主総会で「異議あり!」って叫びたいの?
Alphabet(Google)のクラスC(優先株)とクラスA(普通株)は

元記事を表示

Python で Azure の サブスクリプション毎に日単位で使用料金一覧を表示してみました

## 概要

Azure SDK for Python を利用して、Azureのサブスクリプション毎に日単位の使用料金とラグ情報「当日と前日/前々日/前々々日の利用料金差」を付加した一覧を取得表示するための Python プログラムです。

### ローカル環境

macOS Monterey 12.1
python 3.8.12

### 実行プログラム

“`python:GetSubscriptionCostManagement_21.py
import time
import argparse
from azure.identity import AzureCliCredential, DefaultAzureCredential
from azure.mgmt.resource import SubscriptionClient
from azure.mgmt.costmanagement import CostManagementClient
import pandas as pd

# 接続しているテナントのサブスクリプションを操作するオブジェクトを取得
de

元記事を表示

Word2Vec、FastTextの比較(演算編)

## はじめに
前回の記事、[Word2Vec、FastTextの比較(類義語編)](https://qiita.com/wrbs/items/ebb6981d5e6c5e2fe595)に続き、今度は演算での比較を行いました。

## 単語同士の演算機能について
Word2Vec、FastTextは単語同士で演算ができます。
有名な例として `王` - `男` + `女` = `女王` があります。
![w2v_003.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2415251/db23dce6-510f-9ee3-b6ad-71519b14eeaf.png)
`王` - `男` + `女` のベクトル演算をすると、 `[0.4, 0.2]` - `[0.1, 0.2]` + `[0.2, 0.5]` = `[0.5, 0.5]` になります。これは `女王: [0.5, 0.5]` に一致します。
図1のように単語間の“王族”という概念差と“女性”という概念差がWikipediaの学習により獲得でき

元記事を表示

特定文字で分割して列作成

| email |
|:-|
| aaa@xxx.com |
| bbb@yyy.co.jp |
| ccc@zzz.ne.jp |

上のようなデータフレームから、下のようなデータフレームを作りたい

| email | user | domain |
|:-|:-|:-|
|aaa@xxx.com | aaa | xxx.com |
|bbb@yyy.co.jp | bbb | yyy.co.jp |
|ccc@zzz.ne.jp | ccc | zzz.ne.jp |

# 1. 特定文字列で分割
“`python
temp = df[“email”].str.split(“@”)
print(temp)
# 0 [aaa, xxx.com]
# 1 [bbb, yyy.co.jp]
# 2 [ccc, zzz.ne.jp]
# Name: email, dtype: object
“`

# 2. 分割結果をデータフレームに拡張
“`python
temp = df[“email”].str.split(“@”, expand=True)
print

元記事を表示

AIトレードシステムのMT4埋め込み(2)

https://qiita.com/EasyCording/items/e7b22cbd3f734b664517

サーバー側が完成しました。

ポイントとしては、Postgressサーバーをドッカーで立ち上げ、為替価格をテーブルに入れたこと
これまでよりも、スムーズに価格リストを引き出せるようになりました。

“`shell.sh
api
POSTGRESによる為替価格データベースを構築

%pip install sqlalchemy psycopg2 pandas_datareader mplfinance torch torchvision databases fsspec asyncpg fastapi_crudrouter sqlalchemy_utils –user
“`

postgressのコンフィギュレーションです。
(ほとんどのソースは、書籍から使わせていただきました)

“`main.py
import os

class DBConfigurations:
postgres_username = “user”
postgres_pa

元記事を表示

【Django】LoginViewの認証をViewsで実装する【Python】

# 初めに
認証にはDjangoの認証であるLoginViewを使用しますが、urlsではなくviewsで呼び出します。
urlsでのLoginViewの認証方法は多くありますが、viewsでの呼び出す情報が少なかったので備忘録としてまとめます。
自分が必要だと思った部分のみ簡潔にまとめますのでご活用ください。

# 環境
|名称 |バージョン |
|—|—|
|Python |3.10.4 |
|Django |4.0.3 |

# urlsで呼び出す
urlsでの呼び出し方は以下の9行目のようになります。
![キャプチャ.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1225075/9cf87b7a-e6d7-628b-5a71-0adad991fe5f.jpeg)
この場合実装は簡単ですが、直接LoginViewを呼び出し、
認証後は「settings.py」の「LOGIN_REDIRECT_URL」にリダイレクトされます。
自分のアプリのviewsを通らないので、viewsでご

元記事を表示

多クラス分類の活性化関数(初投稿)

# 多クラス分類におけるニューラルネットの出力層の活性化関数の話
記念すべき初投稿です!こんにちは!!!!
ところで、僕は大学2年なのですが、春休み中暇だったので深層学習の数式を追ってみたいと思い、『深層学習 改訂第2版(著:岡田貴之)』で勉強しています。ので、自分なりに理解できたことを書いていきます。

## ソフトマックス関数
多クラス分類の出力層にはソフトマックス関数を使う。
ソフトマックス関数の定義は、ソフトマックス層の$k$番目のノードへの入力$a_k$を用いて、

$ y_k=\displaystyle \frac{\exp(a_k)}{\sum_{i=1}^n \exp(a_i)} $

式を見ると、$ y_k $の和は1になりそう!
つまり

$ \displaystyle \sum_{k=1}^n y_k=1\ が成り立っているという事 $

この左辺を書き下してみると、

$ \displaystyle \sum_{k=1}^n \frac{\exp(a_k)}{\exp(a_1)+\exp(a_2)+…\exp(a_n)} $

となります。これより、和が1に

元記事を表示

Python Openpyxlを使ったExcelファイル操作(ブックの作成と保存・シートの選択)

PythonでExcel操作を行う為の”openpyxl”の使用方法についてまとめています。

## 本記事の記載内容
– [エクセルを操作するライブラリ”openpyxl”のインストール方法](#使用するライブラリ)
– [ファイルの作成](#ファイルの作成)
– [ファイルの保存](#ファイルの保存)
– [ファイルの読み込み](#ファイルの読み込み)
– [シートの選択](#シートの選択)
– [公式サイト](#openpyxl公式サイト)

### 環境
python3 –version : 3.9.10
openpyxl : 3.0.9

## 使用するライブラリ
“`python:openpyxl のインストール
pip3 install openpyxl
“`
## ファイルの作成
“`python:
import openpyxl as px
wb = px.workbook()
“`
* as pxは”openpyxl”を以降は”px”と記載するという意味
* “import openpyxl as px” は一個の実行ファイルにつき一回記載すればOK(以

元記事を表示

OTHERカテゴリの最新記事