【完全ガイド】FXボットを24時間稼働させる方法|VPS vs クラウド
「FXボットを作ったけど、自分のPCをずっとつけておくわけにはいかない...」
自動売買を本格運用するには、24時間動き続ける環境が必要です。
この記事では、FXボットを安定稼働させるための選択肢を比較し、それぞれの設定方法を解説します。
選択肢の比較
| 方法 | 月額費用 | 難易度 | 向いている用途 |
|---|---|---|---|
| 自宅PC | 電気代のみ | 簡単 | テスト用 |
| VPS | 1,000〜3,000円 | 普通 | MT4 EA |
| Google Cloud Functions | ほぼ無料 | やや難 | Pythonボット(定期実行) |
| AWS EC2/Lightsail | 500〜2,000円 | やや難 | Pythonボット(常時稼働) |
方法1: 従来型VPS(MT4 EA向け)
MT4のEAを動かすなら、Windows VPSが王道です。
おすすめVPS
| サービス | 月額 | 特徴 |
|---|---|---|
| シンクラウドデスクトップ for FX | 1,790円〜 | FX専用、自動復旧機能、おすすめ! |
| お名前.com デスクトップクラウド | 3,089円〜 | FX専用 |
| ConoHa for Windows Server | 2,783円〜 | 時間課金可能 |
シンクラウドがキャンペーンで最安(2026年3月末まで)。 MT4プリインストール済みで設定も簡単。
VPS設定手順(お名前.com の例)
1. VPS契約
- お名前.com デスクトップクラウド にアクセス
- 「FX専用VPS」プランを選択
- Windows Server を選んで契約
2. リモートデスクトップ接続
- Windowsの「リモートデスクトップ接続」を起動
- VPSのIPアドレスを入力
- ユーザー名・パスワードでログイン
3. MT4をインストール
- VPS上でブラウザを開く
- FX業者のサイトからMT4をダウンロード
- インストール、ログイン
4. EAをセット
- EAファイル(.ex4)をVPSにコピー
- MT4のExpertsフォルダに配置
- チャートにEAをセット
- 自動売買をON
これで24時間稼働!
VPS運用のコツ
- 自動ログオン設定:再起動後も自動でログイン
- MT4自動起動設定:スタートアップにMT4を登録
- 監視ツール:VPS Monitorなどで死活監視
方法2: Google Cloud Functions(Pythonボット向け)
**「定期実行型」**のボットなら、GCF + Cloud Schedulerが最強コスパ。
なぜGCFがおすすめ?
- ほぼ無料(月200万リクエストまで無料)
- サーバー管理不要
- 自動スケール
- 高い稼働率
向いているボット
- 1時間ごとにチェックして売買
- 特定時刻に実行(ゴトー日など)
- Webhookで外部からトリガー
GCF設定手順
1. プロジェクト準備
# プロジェクト構成my-fx-bot/├── main.py # ボットのコード├── requirements.txt # 依存ライブラリ2. main.py(Cloud Functions用)
import osimport jsonimport hmacimport hashlibimport timeimport requestsimport pandas as pdimport pandas_ta as tafrom datetime import datetime
# 環境変数から取得(Secret Managerで管理)API_KEY = os.environ.get("GMO_FX_API_KEY")API_SECRET = os.environ.get("GMO_FX_API_SECRET")
def create_signature(timestamp, method, path, body=""): text = timestamp + method + path + body return hmac.new( bytes(API_SECRET.encode("ascii")), bytes(text.encode("ascii")), hashlib.sha256 ).hexdigest()
def get_timestamp(): return str(int(time.time() * 1000))
def trading_bot(request): """Cloud Functions エントリーポイント"""
print(f"=== 実行開始: {datetime.now()} ===")
# ここに売買ロジックを実装 # (前回までの記事で作ったコードを流用)
# 例: 現在価格を取得 ticker = get_ticker() print(f"現在価格: {ticker}")
# 例: RSIをチェック df = get_klines() df["rsi"] = ta.rsi(df["close"], length=14) current_rsi = df["rsi"].iloc[-1] print(f"RSI: {current_rsi:.1f}")
# 例: 条件に応じて売買 if current_rsi < 30: print("RSI売られすぎ!買い検討") # place_order("BUY", 100)
return {"status": "ok", "rsi": float(current_rsi)}
def get_ticker(symbol="USD_JPY"): url = f"https://forex-api.coin.z.com/public/v1/ticker?symbol={symbol}" response = requests.get(url) return response.json()["data"][0]
def get_klines(symbol="USD_JPY"): url = "https://forex-api.coin.z.com/public/v1/klines" params = {"symbol": symbol, "interval": "1hour", "date": datetime.now().strftime("%Y%m%d")} response = requests.get(url, params=params) df = pd.DataFrame(response.json()["data"]) df["close"] = df["close"].astype(float) return df3. requirements.txt
functions-framework==3.*requests>=2.28.0pandas>=2.0.0pandas-ta>=0.3.14b4. デプロイ
gcloud functions deploy fx-trading-bot \ --gen2 \ --runtime=python312 \ --region=asia-northeast1 \ --source=. \ --entry-point=trading_bot \ --trigger-http \ --set-secrets='GMO_FX_API_KEY=gmo-fx-api-key:latest,GMO_FX_API_SECRET=gmo-fx-api-secret:latest'5. Cloud Schedulerで定期実行
# 毎時0分に実行gcloud scheduler jobs create http fx-bot-hourly \ --location=asia-northeast1 \ --schedule="0 * * * *" \ --uri="https://asia-northeast1-PROJECT_ID.cloudfunctions.net/fx-trading-bot" \ --http-method=GET \ --time-zone="Asia/Tokyo"GCFの月額コスト
| リソース | 無料枠 | 超過分 |
|---|---|---|
| 呼び出し | 200万回/月 | $0.40/100万回 |
| コンピューティング | 40万GB秒/月 | $0.000016/GB秒 |
| ネットワーク | 5GB/月 | $0.12/GB |
1時間に1回、月720回実行しても完全無料です。
方法3: AWS Lightsail(常時稼働Python)
「ずっと動き続ける」タイプのボットならAWS Lightsailがコスパ良し。
料金
- $3.5/月(512MB RAM)〜
- $5/月(1GB RAM)← おすすめ
セットアップ手順
1. Lightsailインスタンス作成
- AWS Lightsail にアクセス
- 「インスタンスの作成」
- Linux/Ubuntu を選択
- $5プランを選択
- 作成
2. SSH接続
ssh -i your-key.pem ubuntu@your-ip-address3. Python環境構築
# Pythonインストールsudo apt updatesudo apt install python3-pip python3-venv -y
# プロジェクトディレクトリ作成mkdir fx-bot && cd fx-bot
# 仮想環境作成python3 -m venv venvsource venv/bin/activate
# ライブラリインストールpip install requests pandas pandas-ta python-dotenv4. ボットを配置
# scpでファイル転送scp -i your-key.pem main.py ubuntu@your-ip:~/fx-bot/scp -i your-key.pem .env ubuntu@your-ip:~/fx-bot/5. systemdでサービス化
sudo nano /etc/systemd/system/fx-bot.service[Unit]Description=FX Trading BotAfter=network.target
[Service]Type=simpleUser=ubuntuWorkingDirectory=/home/ubuntu/fx-botExecStart=/home/ubuntu/fx-bot/venv/bin/python main.pyRestart=alwaysRestartSec=10
[Install]WantedBy=multi-user.target# サービス有効化sudo systemctl enable fx-botsudo systemctl start fx-bot
# ログ確認sudo journalctl -u fx-bot -fこれで24時間稼働+自動再起動!
どれを選ぶべき?
MT4 EAを動かしたい
→ Windows VPS(お名前.com、ABLENET など)
Pythonで定期実行したい
→ Google Cloud Functions(ほぼ無料)
Pythonで常時稼働したい
→ AWS Lightsail(月$5〜)
複雑なシステムを組みたい
→ AWS EC2 / GCP Compute Engine
安定稼働のためのチェックリスト
- 自動再起動の設定(systemd, タスクスケジューラ)
- 死活監視(UptimeRobot, AWS CloudWatch)
- エラー通知(Slack, メール)
- ログ保存(CloudWatch Logs, ファイル)
- バックアップ(設定ファイル、.envなど)
- セキュリティ(SSH鍵認証、ファイアウォール)
まとめ
| 方法 | 費用 | 用途 |
|---|---|---|
| VPS | 月1,000〜3,000円 | MT4 EA |
| GCF | ほぼ無料 | Python定期実行 |
| Lightsail | 月$5〜 | Python常時稼働 |
初心者おすすめ:GCF + Cloud Scheduler MT4ユーザー:Windows VPS 本格運用:Lightsail or EC2
24時間稼働環境を整えれば、あなたのボットは寝ている間も、仕事している間も、休まず働いてくれます。
次は最後の記事。損切り・リスク管理の自動化を解説します。
📚 次に読む記事: Python 損切り自動化ガイド
🎁おすすめツール・サービス
※上記リンクにはプロモーション(広告)が含まれています
量子相場謀略|ホソノP
ブログでは書けない本音のトレード戦略とEA開発の裏側を公開。 データに基づいた検証で、再現性のある手法だけをお届けします。