Strasmore Research
Deep Dives · Matt ConnorBy Matt Connor ·

çok ajanlı yapay zeka alım satım sistemleri gerçek

Çok ajanlı yapay zeka alım satım sistemleri, bir işlemde LLM komiteleri çalıştırır. Mimarisi, bir sinyalin temizlediği piyasa maliyetleri ve ilgili backtest tuzakları anlatılmaktadır.

Çok ajanlı bir yapay zeka alım satım sistemi, tek bir alım satım kararını birden fazla büyük dil modeli örneği arasında böler, her örneğe bir rol verir ve çıktılarını tek bir emirde birleştirir. Olağan kadro bir haber okuyucusu, bir temel analist, bir grafik analisti, bir risk denetleyicisi ve hakemlik yapan bir yönetici ajandır. Temmuz 2026 itibarıyla, bu şekildeki birkaç açık kaynak çerçeve, GitHub'da algoritmik alım satım konusunda her biri birkaç yüz yıldıza sahip olarak yer almaktadır. Bu sayfa, mimariyi anlatır, yayınlanmış kanıtları README iddialarından ayırır ve herhangi bir sürümünün aşması gereken maliyetlere ilişkin piyasa verilerini sunar.

Çok ajanlı bir yapay zeka alım satım sistemi aslında nedir

Mimari, bir başkanı olan bir komitedir. Her ajan, bir komut şablonu, bir veri akışı ve bir çıktı şemasıdır. Haber ajanı manşetleri alır ve bir etiket döndürür. Temel analiz ajanı, dosya özetlerini alır ve bir puan döndürür. Başkan ajan, bu etiketleri ve puanları alır ve bir emir döndürür.

Bu tasarımdan üç özellik çıkar ve her biri, herhangi bir performans iddiasından önce adlandırılmaya değerdir.

Her ajan genellikle bir temel modeli paylaşır. Aynı ağırlıklara karşı beş komut, ilişkili görüşler üretir, bu nedenle beş ajanlı bir oy, beş bağımsız tahmin değildir. Komite çerçevesi, uygulamanın sağlamadığı bir çeşitlendirmeyi önerir.

Sistem, sayısal bir kararın etrafına sarılmış bir metin işlem hattıdır. Model kelimeleri okur ve bir token yayar. Pozisyon büyüklüğü, emir türü, stop yerleşimi ve çıkış mantığı, altta yatan sıradan kodlardır ve sonucu belirleyen şeyin çoğu, komutlardan ziyade bu kodda yaşar.

Bir komite turu saniyeler sürer. Bu, haftalık bir yeniden dengeleme için uygulanabilir ve piyasa yapıcıların mikrosaniyeler içinde fiyat teklifi verip yeniden fiyatladığı gün içi hızında önemsizdir.

Araştırmanın desteklediği ve desteklemediği şeyler

Finansta dil modelleri üzerine yayınlanmış çalışmalar, çok farklı güçteki üç iddiaya ayrılır.

Çıkarma ve sınıflandırma güçlü iddiadır. Modeller, duyarlılığı etiketler, dosyalardan rakamları çıkarır ve uzun belgeleri, birkaç yıl önce özel bir model gerektiren bir doğrulukla sıkıştırır. Bu, ayrılmış metin üzerinde ölçülebilir ve geçerliliğini korur.

Piyasa durumunun tanımı karma iddiadır. Modeller, bir rejimin akıcı açıklamalarını yazar ve bu açıklamalar genellikle modele gösterilen verilerle tutarlıdır. Tanımın, fiyatın halihazırda taşımadığı bilgiyi taşıyıp taşımadığı ayrı bir sorudur ve bunu dikkatlice test eden makaleler, geniş hata paylarıyla küçük etkiler bildirir.

Kârlılık zayıf iddiadır. Çoğu depo README'si, fonlanmış bir geçmiş performans kaydından ziyade bir geriye dönük test bildirir ve örneklem içi bir özsermaye eğrisi ile canlı bir hesap arasındaki mesafe, nicel alım satımdaki en eski mesafedir. Sürece bir dil modeli eklemek bu mesafeyi kısaltmaz.

Bir sinyalin aşması gereken maliyet tabanı

Her işlem bir spread'i geçer ve bu geçiş, bir stratejinin başka her şeyden önce aşması gereken tabandır. 22-26 Haziran 2026 tarihleri arasında normal saatlerde altı ABD'de işlem gören şirket için medyan kotasyon spread'i:

SorgulaMaliyet tabanı: Medyan kotasyon spread'i (baz puan cinsinden, orta nokta, normal seans, 22-26 Haziran 2026)
Her verinin arkasındaki tam SQL
SELECT ticker,
       round(quantileExactIf(0.5)(toFloat64(ask_price - bid_price) / (toFloat64(ask_price + bid_price) / 2), bid_price > 0 AND ask_price > bid_price) * 10000, 2) AS spread_bps,
       round(2 * quantileExactIf(0.5)(toFloat64(ask_price - bid_price) / (toFloat64(ask_price + bid_price) / 2), bid_price > 0 AND ask_price > bid_price) * 10000, 2) AS round_trip_bps,
       round(count() / 1e6, 1) AS quote_updates_m
FROM global_markets.cache_stocks_quotes
WHERE ticker IN ('SPY', 'AAPL', 'MSFT', 'KO', 'F', 'RIOT')
  AND sip_timestamp >= toDateTime('2026-06-22 00:00:00')
  AND sip_timestamp < toDateTime('2026-06-27 00:00:00')
  AND (toHour(sip_timestamp) * 60 + toMinute(sip_timestamp)) BETWEEN 810 AND 1199
GROUP BY ticker
HAVING countIf(bid_price > 0 AND ask_price > bid_price) > 0
ORDER BY spread_bps
Run this yourself

Bir baz puan, yüzde birin yüzde biridir. Paneldeki en dar isim SPY, o hafta boyunca 0.27 baz puanlık bir medyan spread kotasyonu yaptı. En geniş isim RIOT, 7.09 kotasyonu yaptı. Bir gidiş-dönüş spread'i iki kez öder, bu nedenle ilk isimde bir giriş ve çıkış 0.55 baz puan geride başlar ve son isimdeki aynı çift 14.19 geride başlar. Portföyünü haftada iki kez çeviren bir ajan, bu ücreti yılda yaklaşık yüz kez öder ve çağrı doğru ya da yanlış olsun, ücret tahsil edilir. Bir hisse senedini işlem görmenin maliyeti nedir, faturanın geri kalanını detaylandırır.

Yönlü bir çağrının yenmesi gereken gürültü

Yön çağrıları, çoğunlukla küçük sayılardan oluşan bir dağılıma göre derecelendirilir. Takvim 2025'teki her SPY seansı, kapanıştan kapanışa hareketinin büyüklüğüne göre sıralanmıştır:

SorgulaTipik bir seansın büyüklüğü: SPY kapanıştan kapanışa hareketler (büyüklük dilimine göre, takvim 2025)
Her verinin arkasındaki tam SQL
WITH daily AS (
    SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS d,
           argMax(close, window_start) AS close_px
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'SPY'
      AND toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2025-01-01')
      AND toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2025-12-31')
      AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
           + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
    GROUP BY d
),
paired AS (
    SELECT d, close_px,
           any(close_px) OVER (ORDER BY d ASC ROWS BETWEEN 1 PRECEDING AND 1 PRECEDING) AS prev_px
    FROM daily
),
rets AS (
    SELECT d, round(100 * (toFloat64(close_px) / toFloat64(prev_px) - 1), 3) AS ret_pct
    FROM paired
    WHERE prev_px > 0
)
SELECT multiIf(abs(ret_pct) < 0.25, 'under 0.25%',
               abs(ret_pct) < 0.5, '0.25 to 0.5%',
               abs(ret_pct) < 1.0, '0.5 to 1%',
               abs(ret_pct) < 2.0, '1 to 2%',
               '2% and up') AS move_bucket,
       count() AS sessions,
       round(100 * count() / sum(count()) OVER (), 1) AS pct_of_sessions
FROM rets
GROUP BY move_bucket
ORDER BY min(abs(ret_pct))
Run this yourself

Yılın yarısı yarım yüzde içinde kaldı. under 0.25% bandı, seansların 24.9%'sini ve 0.25 to 0.5% bandı bir 24.1% daha fazlasını tuttu. Diğer uçta, 13 seans 2% and up, yılın 5.2%'si kadar hareket etti.

Bunu spread panelinin yanında tutun. Bir baz puan %0,01'dir. %0,3'lük tipik bir seans hareketi, dar bir spread'in otuz katı ve geniş olanın kabaca dört katıdır. Aritmetik, sabırlı, doğru bir çağrı için yer bırakır ve hızlı, marjinal bir çağrı için çok az yer bırakır.

İşlem yapılabilir evrenin aslında nerede olduğu

Ajan çerçeveleri kapsama alanı, genellikle her sabah taranan yüzlerce sembolün reklamını yapar. Dolar hacmi, bu listenin ne kadarının büyüklüğü kaldırabileceğini gösterir. 30 Haziran 2026'da normal saatlerde işlem gören her ABD'de listelenmiş isim, o seanstaki dolar hacmindeki sırasına göre gruplandırılmıştır:

SorgulaParanın işlem gördüğü yer: ABD dolar hacmi (likidite sıralaması dilimine göre, normal seans, 30 Haziran 2026)
Her verinin arkasındaki tam SQL
WITH tv AS (
    SELECT ticker,
           sum(toFloat64(close) * toFloat64(volume)) AS dollar_volume
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE toDate(toTimeZone(window_start, 'America/New_York')) = toDate('2026-06-30')
      AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
           + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
    GROUP BY ticker
    HAVING sum(toFloat64(close) * toFloat64(volume)) > 0
),
ranked AS (
    SELECT ticker, dollar_volume,
           row_number() OVER (ORDER BY dollar_volume DESC) AS rk
    FROM tv
)
SELECT multiIf(rk <= 10, 'top 10 names',
               rk <= 50, 'ranks 11 to 50',
               rk <= 200, 'ranks 51 to 200',
               rk <= 1000, 'ranks 201 to 1000',
               'ranks beyond 1000') AS liquidity_tier,
       count() AS tickers,
       round(sum(dollar_volume) / 1e9, 2) AS dollar_volume_bn,
       round(100 * sum(dollar_volume) / (SELECT sum(dollar_volume) FROM tv), 1) AS pct_of_dollar_volume
FROM ranked
GROUP BY liquidity_tier
ORDER BY min(rk)
Run this yourself

On isim, seansın dolar hacminin 22.5%'ünü, yaklaşık 205.04 milyar dolar taşıdı. Sonraki 40, 20.5% taşıdı. Diğer uçta, 1000'in ötesinde sıralanan 10966 isim, aralarında 12.9% paylaştı ve tüm kuyruğa yayılmış kabaca 117.83 milyar dolar.

Genişlik, reklamı ucuz ve işlemi pahalıdır. Üç bin ismi sıralayan bir komite, sıralama çabasının çoğunu, yukarıdaki spread panelinin yuvarlama hatasından ziyade gerçek bir maliyet olduğu bu kuyrukta harcar.

Bu geriye dönük testlerin sistemi neden olduğundan iyi gösterdiği

Pohpohlayıcı bir geriye dönük testin en büyük tek kaynağı, pencere seçimidir. Takvim yılına göre SPY, 2016'dan 2025'e, yılın en yüksek ve en düşük kapanış fiyatı arasındaki farkla birlikte:

SorgulaPencere cevabı belirler: SPY takvim yılı fiyat getirisi ve yıl içi en yüksek-en düşük aralığı, 2016-2025
Her verinin arkasındaki tam SQL
WITH daily AS (
    SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS d,
           argMax(close, window_start) AS close_px
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'SPY'
      AND toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2016-01-01')
      AND toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2025-12-31')
      AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
           + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
    GROUP BY d
),
yr AS (
    SELECT toYear(d) AS year,
           argMin(close_px, d) AS first_close,
           argMax(close_px, d) AS last_close,
           max(close_px) AS high_close,
           min(close_px) AS low_close,
           count() AS sessions
    FROM daily
    GROUP BY year
)
SELECT year,
       sessions,
       round(100 * (toFloat64(last_close) / toFloat64(first_close) - 1), 1) AS price_return_pct,
       round(100 * (toFloat64(high_close) / toFloat64(low_close) - 1), 1) AS high_low_range_pct
FROM yr
ORDER BY year
Run this yourself

Yalnızca 2021 üzerinde test edilen bir sistem, 28.7% daha yüksek kapanan bir yıl, yükselen bir bant miras alır. Yalnızca 2022 üzerinde test edilen aynı sistem, -20% ile kapanan, düşen bir bant miras alır. Yıl içi en yüksek ve en düşük kapanış arasındaki fark, 2020'te 68%'e ulaştı ve daha sakin yıllarda bile 25.3%'nın üzerinde kaldı.

Pencere sorununun üzerinde dört tuzak bulunur ve bunlardan biri yalnızca dil modellerine aittir.

  • Eğitim verileri aracılığıyla ileriye bakma. 2025'e kadar metinle eğitilmiş bir model, 2023'teki bir ticaretin nasıl sonuçlandığını zaten okumuştur. 2023 üzerinde bir geriye dönük test, modelin cevabını bildiği bir soruyu sorar ve fiyat serisinin hiçbir karıştırması bu bilgiyi kaldırmaz.
  • Sembol listesinde hayatta kalma yanlılığı. Bugünün listelerinden oluşturulan bir evren, yol boyunca borsadan çıkarılan isimleri atlar.
  • Dolum varsayımları. Her emri orta noktada dolduran bir geriye dönük test, yukarıdaki maliyet panelinin tamamını siler.
  • Komut varyantları üzerinden seçim. Denenen yirmi komut ifadesi ve bildirilen en iyisi, dil modellerinden çok önce parametre taramalarına musallat olan aynı aşırı uyumdur.

Dil modeli ajanlarının makul bir şekilde yardımcı olabileceği yerler

Teklifin dürüst versiyonu, README versiyonundan daha dardır ve yine de kullanışlıdır.

Okuma hacmi en net kazançtır. Bir izleme listesindeki her dosya ve manşet üzerinde gece boyunca çalışan ve yapılandırılmış bir özet döndüren bir ajan, saatlerce insan dikkatini kurtarır ve çıktı kaynağa karşı kontrol edilebilir.

Bir rejimi düz bir dille tanımlamak ikincisidir. Bir insanın okuyacağı aynı rakamlardan oluşturulan, dağılım, genişlik ve oynaklık hakkında günlük bir paragraf, herhangi bir tahmin taşımasa bile yararlı bir brifing belgesidir.

Süreç hijyeni üçüncüsüdür. Belirtilen bir pozisyon limitini ihlal eden bir emri reddeden veya bir kazanç tarihinde işlem yapmak üzere olan bir stratejiyi işaretleyen bir ajan, dikkati dağılmış bir insanın atladığı kuralları uygular.

Bunlardan hiçbiri piyasada bir avantaj değildir. Her üçü de araştırma ve operasyon çalışmasıdır; ölçülebilir kazanımların bugün oturduğu yer burasıdır. düşük oynaklık anomalisi gibi belgelenmiş bir etki, herhangi birinin onu gerçek olarak ele almasından önce büyük örneklemler ve tekrarlanan örneklem dışı replikasyon gerektirdi ve yeni bir ajan çerçevesi de aynı çıtayı karşılar ya da karşılamaz. En iyi günleri kaçırmak, sık geçiş yapmanın uzun vadeli bir yatırımcıya maliyetini gösterir.

Uygulayıcıların tanımladığı disiplin

Bu sistemleri halka açık olarak çalıştıran ekipler, aynı sırayı tanımlama eğilimindedir. Günler değil aylar boyunca simüle edilmiş dolgularla ileriye dönük test yapın, çünkü bir kağıt kayıt yalnızca gerçek zamanın hızında birikir. Komutların hiç görmediği bir örneklem dışı dilim tutun. Her komutu, her yanıtı ve her emri günlüğe kaydedin, çünkü tekrar oynatılamayan bir komite hata ayıklanamaz. Modelin dışında kalan sabit kurallarla pozisyonları boyutlandırın. Herhangi bir dönemi kârlı olarak adlandırmadan önce yukarıdaki panellerdeki her maliyeti sayın.

SSS

Çok ajanlı yapay zeka alım satım sistemleri gerçekten para kazandırır mı?

Kamuya açık kanıtlar zayıftır. Çoğu açık kaynak proje, denetlenmiş bir canlı kayıt yerine bir geriye dönük test yayınlar ve dil modeli stratejilerinin geriye dönük testleri belirli bir kusur taşır: model, test dönemini tanımlayan metin üzerinde eğitilmiştir. Denetlenmemiş bir özsermaye eğrisi, yazılımı gösterir, bir avantajı değil.

Bir LLM ajan komitesi tek bir modelden daha mı iyidir?

Bir komite, bazı biçimlendirme ve ayrıştırma hatalarını azaltır ve çıktıya yapı katar. Her ajan aynı temel veriler üzerinde aynı temel modeli sorguladığında bağımsız bilgi eklemez. Beş ilişkili görüş, ek gecikme ve ek token maliyeti eklenmiş olarak kabaca tek bir görüş olarak oy kullanır.

Bir yapay zeka ajanı bir piyasa yapıcıdan daha hızlı işlem yapabilir mi?

Hayır. Bir dil modeli turu saniyeler sürerken, profesyonel kotasyon sistemleri ortak konumlandırılmış donanım üzerinde mikrosaniyeler içinde çalışır. Kârı hıza bağlı olan herhangi bir strateji, bu sistemlerin yapabileceklerinin dışında kalır ve bu da günler ve haftalık ufukları makul zemin olarak bırakır.

LLM ticaret ajanlarına özgü en büyük geriye dönük test tuzağı nedir?

Eğitim verilerinde ileriye bakma. Geleneksel geriye dönük testler, gelecekteki fiyatların bir karara sızmasına karşı koruma sağlar, ancak bir modelin ağırlıkları, test penceresi hakkında yayınlanmış yorumları zaten kodlar. Yürüyen pencere ve örneklem dışı bölmeler, ağırlıklara gömülü bilgiyi kaldırmaz ve tek temiz test, eğitim kesintisinden sonraki bir dönemdir.

Bir kağıt alım satım döneminin ne kadar süre çalışması gerekir?

Yararlı çerçeve, takvim uzunluğundan ziyade örneklem büyüklüğüdür. Haftalık işlem yapan bir strateji, yılda yaklaşık elli gözlem üretir; bu, herhangi bir avantaj iddiası için küçük bir örneklemdir. Uygulayıcılar genellikle sadece iyi bir dönem değil, bir düşüş görmüş olacak kadar çok işlem ister.


Bu sayfadaki her panel, gerçek ABD piyasa verileri üzerinde depolanmış, sürümlenmiş bir sorgudur. Arkasındaki SQL'i okumak için herhangi bir paneli açın veya Strasmore terminalinde aynı tablolara karşı kendi sorgunuzu çalıştırın.

#ai agents#llm#algorithmic trading#automation#backtesting