Trade Botu Promtu (GPT – Codex İçin)

IBKR hesabıma bağlanan ve AMD hissesi üzerinde otomatik işlem yapan bir Python trade botu kodla ve bu bot şunları yapsın:

  • AMD fiyatını 1 dakikalık periyotlar halinde takip etsin.
  • EMA Crossover stratejisini kullansın.
  • EMA 9 kullansın (9 periyotluk kısa vadeli fiyat ortalaması).
  • EMA 21 kullansın (21 periyotluk uzun vadeli fiyat ortalaması).
  • EMA 9, EMA 21’in üzerine çıktığında AMD için al emri versin.
  • EMA 9, EMA 21’in altına düştüğünde AMD sat emri versin.
  • Sadece yeni bir geçiş gerçekleştiğinde işlem yapsın. Aynı sinyal devam ederken tekrar tekrar alım veya satım emri göndermesin.
  • Aynı anda yalnızca bir AMD pozisyonu açık tutsun.
  • Her işlemde 10.000 dolar kullansın ve bunun üzerine çıkmasın.
  • Her işlem için zarar kes (stop-loss) kullansın. Stop-loss oranı %2 olsun.
  • Günlük toplam zarar $1000 limite ulaştığında o gün artık yeni işlem açmasın.
  • Gün sonunda açık AMD pozisyonu varsa otomatik olarak kapatsın ve gece boyunca pozisyon taşımasın.
  • Yaptığı her alım ve satım işlemini kaydetsin ve bana basit bir durum takip ekranına işlem fiyatını, işlem nedenini ve mevcut kâr/zararı göstersin ve bu ekrandan botu istediğim zaman başlatabileceğim ve durdurabileceğim bir bu olsun.

Bu botu kodladıktan sonra bana dosyalarını iletmeni istiyorum. Botun otomatik kendi çalışması için ben bir VPS alıp, içerisinde bu botu kuracağım. VPS’e ayrıca Interactive Brokers’ın resmi IB Gateway uygulamasını kuracağım. Dolayısı ile botun IBKR API kullanımıyla uyumlu olmasını istiyorum. Tamamıyla ibkr üzerinden işlem yapmaya uygun ve özel bir bot olsun yani. Botu ona göre kodla.

Tüm bunlardan sonra sen ise hem VPS’e bu botu nasıl kuracağımı hem de botu ibkr hesabıma nasıl entegre edeceğimi adım adım anlatmanı istiyorum.

Trade Botu Komutları

1. Komut:

apt update && apt install -y xfce4 xfce4-terminal xrdp xorgxrdp dbus-x11 unzip curl ca-certificates

2. Komut:

adduser trader

3. Komut:

printf '%s\n' 'exec startxfce4' > /home/trader/.xsession
chown trader:trader /home/trader/.xsession
chmod 644 /home/trader/.xsession

4. Komut

systemctl is-active xrdp

5. Komut

ssh -N -L 13389:127.0.0.1:3389 root@VPS_IP

6. Komut

mstsc /v:127.0.0.1:13389

7. Komut

mkdir -p ~/Downloads
cd ~/Downloads

curl --fail --location \
  -o ibgateway-installer.sh \
  https://download2.interactivebrokers.com/installers/ibgateway/stable-standalone/ibgateway-stable-standalone-linux-x64.sh

chmod +x ibgateway-installer.sh
./ibgateway-installer.sh

8. Komut

apt update && apt install -y unzip curl ca-certificates

mkdir -p /root/amd-bot-kurulum
unzip -o /root/AMD_EMA_Bot.zip -d /root/amd-bot-kurulum

mkdir -p /opt/amd-bot
cp -a /root/amd-bot-kurulum/amd_bot/. /opt/amd-bot/

id tradebot >/dev/null 2>&1 || useradd --system --create-home --shell /usr/sbin/nologin tradebot

mkdir -p /opt/amd-bot/data
chown -R tradebot:tradebot /opt/amd-bot

9. Komut

ls -l /opt/amd-bot/run.py
command -v uv || echo "uv bulunamadi"

10. Komut

curl -LsSf https://astral.sh/uv/install.sh -o /root/uv-install.sh &&
UV_INSTALL_DIR=/opt/uv UV_NO_MODIFY_PATH=1 sh /root/uv-install.sh

11. Komut

chmod -R go-w /opt/amd-bot

cd /opt/amd-bot

runuser -u tradebot -- env UV_PYTHON_INSTALL_DIR=/opt/amd-bot/python \
  /opt/uv/uv venv --managed-python --python 3.11 --seed /opt/amd-bot/.venv

12. Komut

runuser -u tradebot -- /opt/amd-bot/.venv/bin/python -m pip install \
  -r /opt/amd-bot/requirements.txt

13. Komut

/opt/amd-bot/.venv/bin/python --version

14. Komut

mkdir -p /opt/amd-bot/vendor

curl --fail --location \
  https://interactivebrokers.github.io/downloads/twsapi_macunix.1050.02.zip \
  -o /opt/amd-bot/vendor/twsapi.zip &&
unzip -q -o /opt/amd-bot/vendor/twsapi.zip -d /opt/amd-bot/vendor

chown -R tradebot:tradebot /opt/amd-bot/vendor

15. Komut

cd /opt/amd-bot/vendor/IBJts/source/pythonclient

runuser -u tradebot -- /opt/amd-bot/.venv/bin/python -m pip install .

16. Komut

cd /opt/amd-bot

.venv/bin/python -c "import ibapi; print('IBKR API:', ibapi.__version__)"

runuser -u tradebot -- .venv/bin/python -m unittest discover -s tests -v

17. Komut

cd /opt/amd-bot
cp -n config.example.json config.json
.venv/bin/python -c "import secrets; print(secrets.token_urlsafe(32))"

18. Komut

nano /opt/amd-bot/config.json

19. Komut

apt update && apt install -y nano

20. Komut

nano /opt/amd-bot/config.json

21. Komut

chown tradebot:tradebot /opt/amd-bot/config.json
chmod 600 /opt/amd-bot/config.json

cd /opt/amd-bot
runuser -u tradebot -- .venv/bin/python check_connection.py --config config.json

22. Komut

cp /opt/amd-bot/deploy/amd-bot.service /etc/systemd/system/amd-bot.service

systemctl daemon-reload
systemctl enable --now amd-bot
systemctl status amd-bot --no-pager

23. Komut

ssh -N -L 8787:127.0.0.1:8787 root@VPS_IP

24. Komut

http://127.0.0.1:8787