| XÂY DỰNG BOT AUTO TRADING MA6–10–20 CHO BINANCE FUTURES BẰNG PYTHON

Được viết bởi thanhdt vào ngày 27/11/2025 lúc 16:10 | 69 lượt xem

XÂY DỰNG BOT AUTO TRADING MA6–10–20 CHO BINANCE FUTURES BẰNG PYTHON

(Dành cho trader, lập trình viên và học viên Xu Hướng VIP)

Trong hệ thống Chiến Lược Xu Hướng VIP, bộ MA6–10–20 là một trong những công cụ mạnh mẽ nhất để xác định xu hướng, điểm vào lệnh và tín hiệu đảo chiều.
Khi kết hợp với Python và Binance API, chúng ta có thể biến nó thành bot auto trading chạy 24/7, theo đúng quy tắc đã học trong khóa.

Bài này sẽ hướng dẫn anh xây dựng bot auto trading Binance Futures MA6–10–20 đầy đủ từ A → Z.


1. Tổng quan chiến lược MA6–10–20 trong bot auto trading

https://trendspider.com/learning-center/wp-content/uploads/2023/10/ma-cross-strats-lc-2-1024x530.png
https://www.investopedia.com/thmb/U1o_WWoAa-uI7HlqHSOdjyo7oAk%3D/1500x0/filters%3Ano_upscale%28%29%3Amax_bytes%28150000%29%3Astrip_icc%28%29/dotdash_Final_Moving_Average_Strategies_for_Forex_Trading_Oct_2020-01-7559aba839cc410d8553868da1f1afc3.jpg

Bộ MA6–10–20 tạo ra các tín hiệu:

1) Xu hướng tăng (Long Bias)

  • MA6 cắt lên MA10
  • MA10 nằm trên MA20
  • Giá nằm trên MA6

2) Xu hướng giảm (Short Bias)

  • MA6 cắt xuống MA10
  • MA10 nằm dưới MA20
  • Giá dưới MA6

3) Vùng nhiễu (Không giao dịch)

  • MA6–10–20 bó hẹp
  • MA phẳng – giá sideway
  • Khối lượng giảm – market không trend

Bot auto trading sẽ chỉ vào lệnh khi xu hướng rõ ràng.


2. Chuẩn bị môi trường bot auto trading Python

pip install ccxt
pip install python-binance
pip install pandas numpy
pip install python-dotenv

Tạo file .env để bảo mật:

BINANCE_API_KEY=xxxx
BINANCE_API_SECRET=xxxx

3. Lấy dữ liệu Binance Futures bằng CCXT

import ccxt
import pandas as pd

binance = ccxt.binance({
    'options': {'defaultType': 'future'}
})

def get_data(pair="BTC/USDT", tf="5m", limit=200):
    ohlcv = binance.fetch_ohlcv(pair, tf, limit=limit)
    df = pd.DataFrame(ohlcv, columns=['time','open','high','low','close','volume'])
    return df

4. Tính MA6 – MA10 – MA20

def apply_ma(df):
    df['MA6'] = df['close'].rolling(6).mean()
    df['MA10'] = df['close'].rolling(10).mean()
    df['MA20'] = df['close'].rolling(20).mean()
    return df

5. Xác định tín hiệu MA6–10–20 cho bot auto trading

def get_signal(df):
    c = df.iloc[-1]

    if c['MA6'] > c['MA10'] and c['MA10'] > c['MA20'] and c['close'] > c['MA6']:
        return "LONG"

    if c['MA6'] < c['MA10'] and c['MA10'] < c['MA20'] and c['close'] < c['MA6']:
        return "SHORT"

    return "NONE"

6. Gửi lệnh Binance Futures (Long/Short)

https://user-images.githubusercontent.com/86794449/124953550-1db94100-dfca-11eb-8e20-77ee41afab2f.png
https://user-images.githubusercontent.com/1671892/111311974-e1a34e80-866f-11eb-9e80-ec7f5d5de404.png
from binance.client import Client
from dotenv import load_dotenv
import os

load_dotenv()
client = Client(os.getenv("BINANCE_API_KEY"), os.getenv("BINANCE_API_SECRET"))

def order_futures(symbol, side, qty):
    order = client.futures_create_order(
        symbol=symbol,
        type="MARKET",
        side=side,
        quantity=qty
    )
    return order

7. Kết hợp tất cả thành bot auto trading MA6–10–20

import time

symbol = "BTCUSDT"
qty = 0.01  # tùy tài khoản

while True:
    try:
        df = get_data(symbol)
        df = apply_ma(df)
        signal = get_signal(df)

        print("Signal:", signal)

        if signal == "LONG":
            order_futures(symbol, "BUY", qty)

        if signal == "SHORT":
            order_futures(symbol, "SELL", qty)

    except Exception as e:
        print("Error:", e)

    time.sleep(10)

8. Bổ sung quản trị rủi ro giống “Xu Hướng VIP”

Quy tắc chuẩn:

  • Stop-loss đặt dưới MA20 (Long)
  • Stop-loss đặt trên MA20 (Short)
  • Không mở 2 vị thế cùng lúc
  • Không giao dịch khi MA6–10–20 bó hẹp
  • Không giao dịch khi volume giảm mạnh

9. Chạy bot auto trading 24/7 trên VPS

https://i.ytimg.com/vi/oZfBK8Kmt5E/maxresdefault.jpg
https://i.ytimg.com/vi/_APBDLi6Fs4/hq720.jpg?rs=AOn4CLAF9AU0dxCTeKF3fM8ovDmXTlZT5Q&sqp=-oaymwEhCK4FEIIDSFryq4qpAxMIARUAAAAAGAElAADIQj0AgKJD

Trên Ubuntu:

sudo apt update
sudo apt install python3-pip
nohup python3 bot.py &

Kiểm tra log:

tail -f nohup.out