Type/to search
2
Follow
484
Followers
Berangkat dari seorang blogger X yang viral, saya membuat sistem trading otomatis yang melacak sinyal media sosial secara real-time.
Discussions
Created 2026-06-05 00:01:03  Updated 2026-06-11 13:54:38
 0
 158

img

Akhir-akhir ini ada yang populer di X

Jika kamu sering scrolling di X (Twitter), mungkin sudah lihat akun ini: @aleabitoreddit, nama jaringannya Serenity.

img

Bio-nya cuma satu baris: mantan trader terkenal Reddit WallStreetBets, analis rantai pasok AI/semikonduktor, mantan anggota RISC-V Foundation, mantan ilmuwan riset AI, sekarang khusus trading perusahaan-perusahaan "bottleneck yang terabaikan".

Kedengarannya seperti bio para pembual X biasa? Tapi data bicara: akun ini baru daftar X Juli 2025, dan sampai Mei tahun ini followers-nya sudah tembus 350.000+, jumlah subscriber mendekati Elon Musk.

Yang lebih menarik adalah track record-nya. Dia mengklaim tingkat pengembalian tahunan puncak mencapai +501%, sekarang stabil di sekitar +122%, dan secara terbuka menyebut lebih dari 38 saham. Ada yang bahkan bikin situs "Serenity Tracker" untuk melacak portofolionya, dan menemukan bahwa tingkat pengembalian tahunan 3840% yang diklaimnya terutama berasal dari investasi awal di perusahaan kecil yang tidak terkenal di rantai pasok AI dan semikonduktor.

Ada yang memverifikasi? Ya. Di era Reddit, dia pernah dilarang oleh moderator WallStreetBets karena merekomendasikan $AXTI (naik dari $12 ke $70) lebih awal, dengan alasan "trader ritel untung terlalu banyak sehingga moderator tidak nyaman". Detail ini cukup menarik.

Tentu saja, screenshot keuntungan di media sosial harus selalu didiskon. Tapi dari segi kemampuan memilih saham, kesimpulan verifikasi independen terhadap rekomendasi dia pada dasarnya adalah—memang sangat akurat. Jadi saya berpikir: bisakah kita menghubungkan sinyal tweet dia ke sistem trading secara real-time?

img

Nilai dari informasi semacam ini

Pertama, beri latar belakang.

Di saham A-share China, kita biasa baca laporan riset, pantau aliran modal utama, tunggu berita. Tapi di pasar saham AS dan kripto, pengaruh KOL di X kadang tidak kalah dengan laporan riset institusi—terutama mereka yang benar-benar punya akumulasi di bidang vertikal.

Metodologi inti Serenity disebut "Teori Chokepoint": mulai dari permintaan akhir yang sangat pasti (ledakan kemampuan komputasi AI), lalu memecah rantai pasok secara terbalik lapis demi lapis, menemukan perusahaan kecil yang memiliki hambatan teknis sangat tinggi dan ketidakseimbangan pasokan-permintaan yang parah. Perusahaan-perusahaan ini biasanya berkapitalisasi pasar kecil, tidak diliput institusi, tapi begitu permintaan meledak, elastisitasnya sangat besar.

Logika ini jelas, dan dia (anonim) terus melacak secara nyata, bukan blogger jangka pendek yang teriak lalu kabur.

Logika serupa bisa diperluas ke banyak area:

-- Satu tweet Elon Musk di X bisa membuat Dogecoin melonjak dalam hitungan menit
-- Panggilan dari KOL kripto terhadap altcoin sering kali menjadi awal dari ritel yang masuk sebagai pembeli terakhir (ini juga bisa digunakan secara terbalik)
-- Analis di kalangan keuangan tradisional tertentu yang mengungkapkan portofolio di X sering kali lebih dulu dari laporan publik

Informasi media sosial itu sendiri adalah alpha, hanya saja kebanyakan orang tidak menghubungkannya secara sistematis.


Tapi ada masalah nyata: kita tidak bisa membeli saham AS spot

Sebagian besar saham yang direkomendasikan Serenity adalah saham AS, seperti NVDA, MRVL, AVGO, SIVE. Pengguna biasa tidak punya akun saham AS, atau tidak mau lewat jalur itu, bagaimana?

Ada satu pendekatan: Kontrak berjangka abadi saham TradFi di Binance.

Binance meluncurkan sejumlah kontrak berjangka abadi dengan underlying saham AS, diselesaikan dengan USDT, mendukung long dan short, tanpa perlu akun saham AS, dan bisa trading 7×24 jam. Saat ini mencakup puluhan saham AS mainstream termasuk NVDA, MRVL, AMD, AVGO, META, MSFT, AMZN, GOOGL, dan terus bertambah.

Ini berarti: jika Serenity merekomendasikan MRVL, saya tidak perlu buka akun saham AS, langsung buka posisi long di kontrak berjangka abadi MRVL_USDT di Binance.

Tentu saja, kontrak semacam ini berbeda dengan memegang saham langsung—tidak ada dividen, hanya pelacakan harga, dan ada biaya funding rate. Tapi untuk trading arah jangka pendek-menengah, ini sudah cukup.


Pemikiran menyeluruh sistem

img

Setelah memikirkan ini, saya mulai mendesain sistem.

Secara keseluruhan ada tiga langkah:

① Mendapatkan tweet Serenity secara real-time ↓ ② Menggunakan LLM untuk mengurai sinyal tweet (saham mana? seberapa yakin?) ↓ ③ Mencocokkan kontrak TradFi Binance, eksekusi trading + manajemen risiko

Langkah pertama adalah yang paling krusial—bagaimana mendapatkan tweet secara real-time?

API resmi Twitter sekarang berbayar, dan tidak murah. Ada solusi gratis?

Ada: RSSHub. Ini alat open source yang bisa mengubah berbagai situs menjadi feed RSS, termasuk tweet Twitter. Dengan menggunakan cookie akun sendiri, tweet pengguna mana pun bisa diubah menjadi RSS secara real-time—pada dasarnya menggunakan akun sendiri untuk mengambil halaman, sepenuhnya gratis.


Deployment RSSHub

Saya deploy RSSHub di server di luar negeri, sehingga tidak perlu menangani masalah jaringan tambahan. Server menggunakan Podman (runtime container umum CentOS), satu perintah selesai:

bash
podman run -d \ --name rsshub \ -p 1200:1200 \ -e NODE_ENV=production \ -e CACHE_TYPE=memory \ -e TWITTER_AUTH_TOKEN="auth_token_Anda" \ -e TWITTER_COOKIE="auth_token=auth_token_Anda; ct0=ct0_Anda" \ diygod/rsshub:latest

Di sini auth_token dan ct0 adalah cookie akun Twitter, bisa ditemukan di alat developer browser (F12 → Application → Cookies → di bawah x.com).

Dua nilai ini setara dengan kredensial login akun, hanya gunakan akun cadangan dan jangan sampai bocor.

Verifikasi:

bash
curl "http://localhost:1200/twitter/user/aleabitoreddit" | head -3

Jika melihat konten RSS dimulai dengan <?xml, berarti berhasil. Selanjutnya strategi bisa langsung melakukan HTTP request ke alamat ini untuk mendapatkan daftar tweet terbaru.


Mendapatkan tabel kontrak secara dinamis

Kontrak TradFi Binance terus bertambah, jadi tabel kontrak tidak bisa ditulis statis, harus diperbarui setiap kali startup dan secara berkala:

python
def refresh_equity_contracts(): ms = exchange.GetMarkets() new_map = {} for key, market in ms.items(): info = market.get("Info", {}) or {} sub_type = info.get("underlyingSubType", []) # Filter kontrak abadi TradFi EQUITY if ( ".swap" in key and "TradFi" in sub_type and info.get("underlyingType") == "EQUITY" ): ticker = key.replace("_USDT.swap", "") new_map[ticker] = key # {"NVDA": "NVDA_USDT.swap", ...} return new_map

Dengan cara ini kontrak yang baru rilis akan otomatis masuk, dan saat LLM mengurai tweet, daftar kontrak terbaru juga akan diberikan sebagai referensi.


Membuat LLM memahami bahasa Serenity

Langkah ini adalah yang paling menarik dari seluruh sistem, dan juga yang paling perlu diasah.

Menyuruh LLM langsung menilai "tweet ini bullish atau bearish" terlalu kasar—cara berekspresi Serenity sangat khas, orang yang tidak mengenalnya akan banyak salah menafsirkan.

Misalnya dia sering mengirim tweet seperti:

"Wow… new extremely transformative news got released today. Making a certain photonics company the effective upstream laser chokepoint for $NVDA NVLink fusion CPO ecosystem. Can anyone guess the name?"

Tweet ini pada dasarnya adalah menggoda untuk menarik perhatian, tweet berikutnya baru yang benar-benar menyebutkan nama yang bullish. Jika LLM tidak tahu kebiasaan ini, mungkin akan menganggapnya sebagai sinyal kuat bullish terhadap NVDA—sama sekali meleset.

Jadi di system prompt harus ditulis secara eksplisit kebiasaan ekspresinya:

python
system_prompt = ( "Anda adalah ekstraktor sinyal trading yang khusus menginterpretasikan tweet dari pengguna Twitter 'Serenity'." "Pengguna ini adalah analis rantai pasok AI dan semikonduktor. Anda perlu memahami kebiasaan ekspresi khasnya:\n" "1. Dia jarang secara langsung mengatakan 'beli', melainkan mengimplikasikan pandangan bullish dengan mendeskripsikan posisi rantai pasok dan hambatan perusahaan.\n" "2. Kata kunci bullish kuat: 「I personally think」「undervalued」「going much higher」" "「chokepoint」「structural」「thesis validated」「go brrr」「bullish」\n" "3. Kata kunci bearish: 「avoid」「overvalued」「nuking」「ban」「bearish」\n" "4. Tweet berupa pertanyaan (「Can anyone guess?」「Does anyone know?」)" "adalah untuk menggantung dan menarik perhatian, tidak membentuk sinyal trading, direction harus neutral\n" "5. Deskripsi tren makro yang tidak menyebut sikap spesifik terhadap instrumen, tidak membentuk sinyal.\n" "Hanya output JSON yang valid, tanpa output konten lainnya." )

Kembalikan format JSON yang seragam:

python
{ "tickers": ["MRVL", "LITE"], # hanya instrumen yang secara eksplisit disikapi oleh penulis, harus ada dalam daftar kontrak "direction": "long", # long / short / neutral "confidence": 85, # 0-100, kekuatan sinyal komprehensif "reason": "Penulis secara eksplisit bullish pada permintaan interkoneksi AI" }

Kriteria penilaian confidence:

  • Pernyataan jelas + didukung logika spesifik: 80-95
  • Deskripsi fakta positif tanpa pernyataan jelas: 55-75
  • Pertanyaan/menggantung/interaksi: 10-40 (direction dipaksa neutral)
  • Deskripsi makro tanpa instrumen spesifik: 30-50 (tickers kosong)

Dalam praktiknya, akurasi identifikasi 'tweet untuk menarik perhatian' cukup tinggi, tweet semacam ini pada dasarnya tersaring dengan benar.


Desain Risk Management

Setelah sinyal ada, logika order sebenarnya tidak terlalu rumit, yang penting adalah risk management yang stabil.

Manajemen Posisi:
-- Posisi per transaksi: 5% dari ekuitas akun
-- Maksimal posisi bersamaan: 5 instrumen
-- Leverage: 1x, tanpa leverage

Stop Loss:
-- Hard stop loss: rugi 5% dari harga masuk langsung tutup posisi, tanpa kompromi

Take Profit: Tidak ada take profit tetap, hanya take profit berdasarkan drawdown

Desain ini berasal dari gaya posisi Serenity — logikanya adalah menunggu realisasi ketidakcocokan pasokan-permintaan, periode posisi cenderung lebih panjang, menggunakan take profit tetap akan memotong banyak keuntungan. Jadi diubah menjadi trailing stop berdasarkan drawdown:

python
# 浮盈达到 8% → 启动移动追踪 # 实际回撤阈值 = max(30%, 峰值 × 35%) # 峰值越大,允许回撤越大 giveback_pct = max(30, peak * 0.35) drawdown = peak - pnl_pct if drawdown >= giveback_pct: # 执行平仓

Contoh untuk merasakan:
-- Puncak +20%, ambang = max(30%, 7%) = 7%, turun ke +13% baru keluar
-- Puncak +80%, ambang = max(30%, 28%) = 28%, turun ke +52% baru keluar

Pemenang besar bisa berlari kencang, kerugian kecil segera di-stop — struktur ini cocok dengan gaya posisi Serenity sendiri.


Sebuah Katup Pengaman: Notifikasi Dulu, Baru Trading

Strategi default adalah mode "hanya notifikasi": jika ada sinyal hanya catat di log, tidak benar-benar order. Setelah observasi beberapa waktu, pastikan penilaian LLM sesuai ekspektasi, lalu beralih secara manual ke mode "trading nyata".

Dashboard memiliki empat tabel:

TabelKonten
Ringkasan SistemEkuitas Akun, Mode, Jumlah Posisi, Tombol Aksi
Statistik TweetJumlah Sinyal Kuat (≥80%) / Sinyal Biasa / Jumlah Dilewati / Rasio Sinyal
Detail PosisiHarga Masuk, Keuntungan Mengambang, Puncak, Status Take Profit, Durasi Posisi
Riwayat TweetInstrumen, Arah, Confidence, Tipe Sinyal

Di riwayat tweet ada kolom "Tipe Sinyal", yang secara otomatis menandai setiap tweet sebagai "💎 Sinyal Kuat" atau "🎭 Menarik Perhatian/Pertanyaan", untuk memudahkan pengecekan kualitas penilaian LLM.

img


Sedikit Pemikiran Tambahan

Kerangka kerja ini pada dasarnya menstrukturkan sumber informasi tertentu secara real-time dan menghubungkannya ke sistem trading, Serenity hanyalah salah satu contoh. Selama ada RSS atau sumber data yang bisa di-scrape, secara teori semuanya bisa dihubungkan. Sumber informasi yang didukung RSSHub sudah lebih dari ribuan, tidak hanya Twitter.

Tentu saja, kualitas sumber sinyal menentukan batas atas seluruh sistem. Memilih orang yang asal-asalan memberikan sinyal, sistem secanggih apapun tidak berguna. Serenity bisa digunakan karena dia memiliki kerangka analisis yang lengkap, bukan tipe blogger jangka pendek yang berteriak lalu lari.


Beberapa Kata Terakhir

Secara keseluruhan sistem dibangun, bagian yang benar-benar memakan waktu adalah dua hal: pertama, deployment RSSHub (server luar negeri + konfigurasi Cookie), kedua, penyesuaian prompt LLM (membuatnya memahami kebiasaan ekspresi KOL tertentu secara akurat).

Bagian kode sebenarnya tidak terlalu rumit, framework platform FMZ sudah mengemas banyak hal dasar, fokusnya adalah memahami logika bisnis dengan jelas.

Saran untuk teman yang baru mulai, jalankan mode notifikasi dulu untuk sementara waktu, lihat log apakah penilaian LLM ada yang melenceng secara signifikan, setelah stabil baru trading sungguhan. Lagipula, trading mengikuti sinyal media sosial itu sendiri adalah mempertaruhkan kemampuan penilaian KOL — jangan posisi terlalu besar, diversifikasi, jaga stop loss dengan baik.

Kode strategi dan implementasi lengkap ada di kolom komentar, selamat berdiskusi.

Kode Strategi: Pelacakan Sinyal KOL Media Sosial_Kontrak Saham TradFi Binance

Comment
All comments (0)
No data
No data
  • 1
iPhone Download
Forums
PINE Language
© 2015 - ∞ INVENTOR PTE LTD (SG)