↗
TENSORPARADIGMNEURAL MARKET INTELLIGENCE
TENSORPARADIGM ARAŞTIRMA / ALGORİTMA TASARIMI / AMPİRİK TESTLER

ChatGPT veya Claude ile İşlem Algoritması Nasıl Geliştirilir? Kârlılığı Test Etmek ve Aşırı Uyumdan Kaçınmak

Python ve Pine Script ile tekrarlanabilir bir alım satım projesi: kesin kurallar, hesaplanmış geriye dönük test sonuçları, maliyetler, ileri yürüyen testler ve aşırı uyumu inceleyen Monte Carlo analizi.

UYGULAMADAN ÖNCE SONUÇ

Evet, ChatGPT veya Claude işlem algoritması geliştirmenize yardımcı olabilir ve ortaya çıkan strateji para kazandırabilir. Python ile yürüttüğümüz örnek çalışmada sabit bir Bitcoin kırılım kuralı, 1 Ocak 2024–31 Temmuz 2026 döneminde modellenen işlem maliyetleri sonrasında %11.55 getiri sağladı. Aynı zamanda günlük kapanışlarla ölçülen %29.72 düşüş yaşadı ve karşılaştırma için kullanılan, başlangıçta belirli bir payla alım yapıp tutan stratejiden daha az kazandırdı. Bunlar geleceğe ilişkin tahminler veya bir yapay zekâ sağlayıcısının alım satım avantajına sahip olduğuna dair kanıtlar değil, geçmiş veriler üzerinde gerçekten yapılmış hesaplamalardır. Bu yazı, aradaki farkı incelemek için kullanılan kuralları, hesaplamaları, işlem muhasebesini ve testleri açıklıyor.

BU YAZIYLA ELDE EDECEKLERİNİZ

  • Bütün ayrıntıları tanımlanmış 55 günlük kırılım / 20 günlük çıkış stratejisi, Python muhasebe modeli ve Pine Script ile arasındaki farkların açıklaması.
  • Zarar eden işlemler, komisyonlar, açık pozisyonun muhasebeleştirilmesine ilişkin bir örnek ve al-tut karşılaştırması dâhil, gerçekten hesaplanmış sonuçlar.
  • Özenle seçilmiş tek bir özkaynak eğrisi yerine dokuz geliştirme varyantının tamamı, dört ileri yürüyen test dönemi ve 15,000 koşullu bootstrap senaryosu.
  • ChatGPT, Claude, Codex ve Claude Code için çalışmanın hangi koşullarda kabul edileceğini açıkça belirten, yeniden kullanılabilir istemler.
  • Bu çalışmanın neyi ortaya koyduğu, neleri yanıtsız bıraktığı ve ileriye dönük testte nelerin kaydedilmesi gerektiği konusunda net bir yanıt.

Sonucunu inceleyebileceğiniz eksiksiz bir alım satım araştırması

“Bana kârlı bir işlem botu geliştir” talebi üç işi birleştirir: bir kural bulmak, onu kodlamak ve sermaye ayrılmayı hak edip etmediğini belirlemek. Bir asistan, birinci ve üçüncü işi çözümsüz bırakırken ikna edici görünen kod üretebilir. Burada basit bir stratejiyi sabitleyerek, belgelenmiş bir tarihsel çalışma yürüterek ve sonucun arkasındaki kayıtları yayımlayarak bu işleri birbirinden ayırıyoruz.

Proje, günlük zaman diliminde çalışan ve yalnızca uzun pozisyon alan bir Bitcoin kırılım sistemidir. Ekonomik hipotezi ölçülüdür: kalıcı trendler, tekrarlanan başarısız kırılımların maliyetini zaman zaman karşılayabilir. Rahatsız edici tarafı, fikrin ayrılmaz parçasıdır. Trend izleyen bir strateji, işlemlerin çoğunda kaybedip birkaç büyük kazanca bağımlı olabilir. Bu nedenle hesabın son bakiyesinin yanında işlem kâr ve zararlarının dağılımını da inceliyoruz.

Araştırma; strateji kurallarını, piyasa gözlemlerini, simüle edilen gerçekleşmeleri ve hesap sonuçlarını ayrı ayrı ele alıyor. Kaynak bilgilerini, günlük girdiyi, çalıştırılabilir 15 testi ve bütün deney kayıtlarını saklıyoruz. Aşağıdaki bölümler hesaplamaları açıklıyor ve sonucu etkileyen işlem ile muhasebe örneklerini gösteriyor.

Bu, bir sohbet botuna hangi varlığın yükseleceğini sorma deneyi değil, yapay zekâ destekli bir yazılım geliştirme çalışmasıdır. Kod Codex'te geliştirildi. Aynı görevi ChatGPT ve Claude'a verip yatırım performanslarını ölçmedik; çalışma sırasında işlemleri seçmek için dil modeli de kullanmadık. Algoritma, yazıldıktan sonra deterministik kuralları izliyor.

Sonuçların nasıl uzlaştırılacağını incelemek için Python ve Pine Script geriye dönük testleri neden farklı sonuç verir? yazısına geçin.

Kârlı sonuca göre yorumlanabilecek boşluklar bırakmayan bir şartnameyle başlayın

Strateji tanımı, işlem listesini değiştirebilecek ayrıntıları kesinleştirmelidir. “55 günlük en yüksek seviyeyi al” demek yeterli değildir: fitil sayılır mı, mevcut mum kanala dâhil midir ve tamamlanmış günlük mum kullanılarak aynı mumun daha önceki açılış fiyatından alım yapılabilir mi? Bizim kuralımız, önceki en yüksek seviyelerin üzerinde tamamlanmış bir kapanış gerektirir; ardından bir sonraki açılışı bekler.

Şartname ve değerlendirme yöntemi, bu çalışma akışında performans hesaplanmadan önce yazıldı. Önce veriyle ilgili iki değişiklik yapıldı: kaynak değiştirildi ve eksik bir dört saatlik gözleme karşı veri kapsamı düzenlendi. İkisi de araştırma kayıtlarında korunuyor. Sonucu iyileştirmek için işlem kuralını değiştirmedik. Bu kayıt, araştırma kararlarının içeride izlenen sırasını gösterir; bağımsız zaman damgasıyla yapılmış bir ön kayıt veya ileriye dönük deney değildir.

Sabit ana strateji ve muhasebe yöntemi
BileşenKesin kural
Varlık ve zamanBTC-USDT; her UTC günlük OHLC mumu, altı adet dört saatlik gözlemin birleştirilmesiyle oluşturulur.
GirişPozisyon yokken tamamlanmış kapanış > önceki 55 günlük mumun en yüksek HIGH değeri; mevcut mumu hariç tutun.
ÇıkışUzun pozisyon varken tamamlanmış kapanış < önceki 20 günlük mumun en düşük LOW değeri; mevcut mumu hariç tutun.
Gerçekleşme zamanıSinyal kapanışta oluşur; alım veya satım, fiyat kayması aleyhte uygulanmış bir sonraki günlük ham açılış fiyatından yapılır.
PozisyonTek uzun pozisyon, kesirli BTC, kaldıraç ve açığa satış yok; pozisyonun tamamından çıkılır.
Giriş bütçesiGiriş komisyonu dâhil kullanılabilir nakdin %90'ı; miktar = 0.9 × nakit / [gerçekleşme fiyatı × (1 + komisyon oranı)].
Ana maliyetlerHER BİR YÖNDE 10 baz puan komisyon ve 5 baz puan aleyhte fiyat kayması; güncel platform tarifesi değil, varsayım.
Hesap başlangıcıRaporlanan her döneme pozisyonsuz ve 10,000 USDT ile başlanır; önceki mumlar yalnızca göstergeleri hazırlamak için kullanılır.
Dönem sonu değerlemesiSon günlük kapanıştan değerleme; zorunlu tasfiye ve varsayımsal çıkış maliyeti karşılığı yok.
Hariç tutulan maliyetlerVergiler, sabit abonelikler, veri ve barındırma; nakit faizi, fonlama veya ödünç alma ücreti yok.

Varsayılan emir gerçekleşme anı idealize edilmiştir. Kesintisiz kripto piyasasında günlük kapanışın tamamlanmasıyla bir sonraki günlük açılış birbirine bitişiktir; gerçek uygulamada veriyi almak, hesaplamak ve emri göndermek zaman alır. Beş baz puanlık fiyat kayması bir varsayımdır; bu gecikmeyle ve emir büyüklüğüyle o fiyattan işlem yapılabileceğinin kanıtı değildir.

Veri incelemesi, geriye dönük test başlamadan çalışmayı değiştirdi

Girdi, humblefool06 tarafından Hugging Face'te CC BY 4.0 beyanıyla yayımlanan üçüncü taraf BTC-USDT arşividir. 9f491eb5340dd6a24f27fde24edf098e1e785443 sürümünü sabitledik, yayımlayanın veri kümesi kartını sakladık ve SHA256 özetlerini kaydettik. TensorParadigm dört saatlik mumları UTC günlük mumlarına dönüştürdü. Bu kaynak bilgisini ve dönüşümü araştırma kayıtlarına ekledik. [1] [9]

Kapsam kontrolleri, 19 Şubat 2020 tarihinin 12:00 UTC bileşeninin bulunmadığını gösterdi. Fiyat uydurmak yerine o günü ve önceki bütün geçmişi dışarıda bıraktık. Bu nedenle normalize edilmiş girdi 20 Şubat 2020'de, geliştirme dönemi ise göstergeleri hazırlayan 71 tam mumun ardından 1 Mayıs'ta başlıyor. Saklanan 2,354 günlük gözlemin tamamı tam olarak altı bileşen içeriyor. Performanstan önce zaman damgası sırası, yinelenen kayıtlar, sonlu değerler ve OHLC tutarlılığı kontrol edildi.

Bir özet, kullanılan baytları tanımlar; yayımlayanın fiyatlarının doğru olduğunu kanıtlamaz. Bu üçüncü taraf arşivini borsa kayıtlarıyla bağımsız biçimde mutabık hâle getirmedik. Daha güçlü bir yatırım araştırması, analizi bağımsız elde edilmiş başka bir veri akışında tekrarlayıp uyuşmazlıkları araştırırdı. Tekrarlanabilirlik ve kaynak doğruluğu birbiriyle ilişkili, ancak farklı gerekliliklerdir.

Kronolojik bölümler; her hesap bağımsız olarak sıfırlanır
BölümTarihlerKullanımı
Geliştirme1 Mayıs 2020–31 Aralık 2022; 975 günSabit kuralı ve önceden belirlenmiş dokuz parametre varyantının tamamını raporlamak.
Doğrulama1 Ocak–31 Aralık 2023; 365 günDeğiştirilmemiş 55/20 kuralını raporlamak; ana parametreleri değiştirmek için kullanmamak.
Ayrılmış tarihsel değerlendirme1 Ocak 2024–31 Temmuz 2026; 943 günSabit kurala ilişkin ana sonuç ve bootstrap girdisi.
İkincil ileri yürüyen test2023, 2024, 2025 ve Ocak–Temmuz 2026Önceki verilerle seçip sonraki test döneminde değerlendirmek; yukarıdaki bölümlerle örtüşür.

Sabit kuralın son bölümünü “ayrılmış tarihsel değerlendirme” olarak adlandırıyoruz. Bu, genel geçmişi zaten bilinen bir piyasaya ait tarihsel veridir. Üstelik ikincil ileri yürüyen çalışma, ilerleyen aşamada örtüşen tarihleri yeniden kullanıyor. Bu yazıdaki bütün analizler birlikte ele alındığında tamamen dokunulmamış tek bir son örneklem yoktur. Buna bağımsız canlı test demek, araştırma tasarımını olduğundan güçlü gösterirdi.

İşlem botunu yazmadan önce asistandan belirsizlikleri gidermesini isteyin

ChatGPT ve Claude, araştırma talebini koda dönüştürmeye, işlem kayıtlarını açıklamaya ve testler önermeye yardımcı olabilir. Codex ve Claude Code bir kod tabanı içinde çalışabilir, dosyaları düzenleyebilir ve komut çalıştırabilir. Belgelenmiş yazılım geliştirme yetenekleri, bu iş akışında denenmelerini anlamlı kılar; hangi ürünün daha kârlı strateji yazdığını göstermez. [3] [4]

Asistana sabit şartnameyi verin ve kodlamadan önce çözümlenmemiş seçimleri belirtmesini isteyin. Bu çalışmadaki önemli seçimler; kırılımda eşitliğin kabul edilip edilmemesi, önceki mumlardan oluşan pencereler, sonraki açılışta gerçekleşme, komisyonu içeren nakit bütçesi ve dönem sonunda açık kalan pozisyonun ele alınışıdır. Bunlardan herhangi birini sessizce uyduran, kendinden emin bir yanıt hatalı uygulamadır.

İstem 1 — fikri denetlenebilir bir şartnameye dönüştürün
Ekteki sabit strateji şartnamesini uygulayın. Önce sinyalleri, emir gerçekleşmelerini, pozisyon büyüklüğünü veya raporlanan kâr/zararı değiştirebilecek belirsizlikleri belirleyin. Filtre eklemeyin ve parametreleri optimize etmeyin. Her girdinin ne zaman kullanılabilir olduğunu açıklayın. Sinyal mantığını, emir gerçekleştirmeyi, muhasebeyi ve raporlamayı ayırın. Tarihsel performansı çalıştırmadan önce zamanlama ve nakit mutabakatı için sentetik testler oluşturun. Kodun tamamını, varsayımları ve deney günlüğünü sunun.

Aşağıdaki istem, kontrollü model karşılaştırmasının dökümü değil, yeniden kullanılabilir bir araştırma talebidir. Modeli ve sürümünü, sağlanan dosyaları, kabul edilen değişiklikleri ve daha sonra denenen her strateji varyasyonunu içeren deney günlüğü tutun. Aksi hâlde “tek fikir”, fark edilmeden iyi görünen bir geriye dönük test bulmak için kaydedilmemiş onlarca fırsata dönüşebilir.

Python geriye dönük testini olayların sırasına göre kurun

Motorun günlük döngüsü bilinçli bir sıra izler: dünün bekleyen emrini bugünün açılışında gerçekleştirir, hesabı bugünün kapanışında değerler, ardından bugünün kararını hesaplar. Böylece günlük kapanış kullanılarak aynı mumun daha erken bir anından gerçekleşme alınması önlenir. İki kanal da karar mumunu dışarıda bırakır. Bu kısa kod parçaları, yanlış uygulanma ihtimali yüksek iki hesaplamayı gösteriyor.

Python örneği — kanallar yalnızca önceki mumları kullanır
# Called at the completed close, after any pending open fill.
entry_level = max(b.high for b in bars[index-entry_lookback:index])
exit_level = min(b.low for b in bars[index-exit_lookback:index])

if not quantity and bar.close > entry_level:
    pending = {"side": "BUY", "signal_date": bar.date}
elif quantity and bar.close < exit_level:
    pending = {"side": "SELL", "signal_date": bar.date}
# Execute pending only on the NEXT loop iteration, at that bar's open.

Giriş miktarı hesaplanırken komisyon %90'lık bütçenin içindedir. Komisyon c ve aleyhte alım fiyatı P ise miktar 0.9 × nakit / [P × (1 + c)] olur. Nakdin %90'ıyla alım yaptıktan sonra ayrıca ücret düşmek, belirtilen bütçeden fazla harcamaya yol açar. Fiyat kayması zaten P'ye yansır; tahmini parasal değerini tekrar çıkarmak aynı maliyeti iki kez yükler.

Python örneği — giriş komisyonu dâhil %90 harcayın
commission = commission_bps / 10000
slippage = slippage_bps / 10000
fill_price = bar.open * (1 + slippage)  # adverse BUY fill
qty = allocation * cash / (fill_price * (1 + commission))
notional = qty * fill_price
fee = notional * commission
cash -= notional + fee

Sentetik verilerle 15 test çalıştırdık. Bunlar; gelecekteki verileri değiştirme, mevcut mumu hariç tutma, eşitliği kabul etmeyen kırılımlar, sonraki açılışta gerçekleşme, aleyhte fiyat kayması, komisyonu içeren miktar hesabı, kapanmış işlem kâr/zararı, açık pozisyon özkaynağı, aynı bütçeli karşılaştırma, son günde gerçekleşmeyen sinyaller, gösterge hazırlığının ayrılması, geçersiz veri ve bootstrap aritmetiğini kapsıyor. Bu testler belirli zamanlama ve muhasebe özelliklerini doğrular. Piyasa avantajı kanıtlamaz.

Yararlı bir değişmez, çekici bir grafikten daha açıklayıcıdır: t tarihinden sonraki fiyatları değiştirmek, t öncesindeki kararı veya emir gerçekleşmesini değiştirmemelidir. Bir diğeri, kayan nokta toleransı içinde tam mutabakattır: başlangıç özkaynağı + kapanmış işlemlerin net kâr/zararı + açık pozisyonun değerlenmiş kâr/zararı = dönem sonu özkaynağı. Çalıştırıcı, simüle ettiği her hesapta bu eşitliği kontrol ediyor.

Farkları açıkça belirtilmiş bir Pine Script uygulaması

Aynı önceki kanal giriş ve çıkış fikrini standart günlük grafikte ifade eden bir Pine Script uygulaması da yazdık. Kesinleşmiş mumları kullanıyor ve normal emirleri bir sonraki muma planlıyor. Simüle edilen gerçekleşmeleri TradingView'in strateji aracı kurum emülatörü ve ayarları belirler; grafik verileri ve mum içi varsayımlar etkili olabilir. [2]

Bu tamamlayıcı kodu TradingView'de derlemedik ve Strateji Test Cihazı sonucu almadık. Yazıdaki bütün performans rakamları Python motorundan geliyor. Pine kaynağı kod olarak incelendi; bu, onu çalıştırmaktan daha dar kapsamlı bir kontroldür.

İki bilinçli farklılık var. Pine'ın fiyat kayması ayarı sabit sayıda fiyat adımı kullanırken Python, fiyatla orantılı beş baz puan kullanıyor; yazdığımız Pine sürümü sıfır fiyat adımı kullandığından ana maliyet modelini yeniden üretmiyor. Pine'ın yerleşik, özkaynağın %90'ına dayalı pozisyon hesabı da bizim giriş komisyonunu içeren nakdin %90'ı bütçemizden farklıdır. Bu farklar nedeniyle hesap getirilerinin eşdeğer olduğunu ileri süremeyiz.

İki motoru doğru karşılaştırmak için önce veri akışını, UTC sınırlarını, gösterge hazırlık geçmişini, tarih aralığını, miktar yöntemini ve ücretleri eşleştirin. Getirilerden önce sinyal tarihlerini ve gerçekleşme kayıtlarını karşılaştırın. İşlemler farklıysa benzer son bakiye doğrulama değil, tesadüfi bir uyuşmadır.

Gerçek hesaplama sonucu: örneklemde kârlı, al-tut karşılaştırmasının gerisinde

Sabit algoritma, 943 günlük ayrılmış dönemde 10,000 USDT'yi 11,154.96 USDT'ye dönüştürdü. %11.55 getirisi bu aralığın birikimli getirisidir; yıllıklandırılmış değildir. Günlük kapanışlarla ölçülen maksimum düşüş %29.72 oldu. Sekiz işlem kapattı, üçünde kazandı ve dönemi pozisyonsuz bitirdi. Bu nedenle söz konusu bölümdeki pozitif net sonuç, dönem sonunda gerçekleşmemiş bir pozisyon kazancına bağlı değildir.

Karşılaştırma stratejisi, ilk dönem açılışında giriş komisyonu dâhil başlangıç nakdinin %90'ını yatırıp pozisyonu tuttu. Günlük kapanışlarla ölçülen %51.05 düşüşle %43.66 getiri sağladı. Sürekli %90'a yeniden dengelenmedi. Algoritmanın ortalama günlük yatırım maruziyeti %33.62 idi; karşılaştırma stratejisi yatırımı sürdürdü ve portföydeki ağırlığı fiyatla değişti. Daha düşük getiriyle birlikte daha düşük düşüş bir ödünleşimdir; alfa kanıtı veya eşit riskli karşılaştırma değildir.

Ayrılmış dönemde sabit kırılım stratejisi ile başlangıçta belirli payla alım yapıp tutan karşılaştırmanın günlük özkaynağı ve düşüşü. Strateji 11,154.96 USDT, karşılaştırma 14,365.54 USDT ile bitiyor.
Gerçek Python çıktısı, 1 Ocak 2024–31 Temmuz 2026. İkisi de 10,000 USDT ile başlıyor ve ana maliyet varsayımlarını kullanıyor. Günlük kapanış düşüşleri, gün içindeki daha kötü kayıpları yakalayamayabilir. Kaynak: humblefool06 arşivi; kaynak belirtilerek TensorParadigm tarafından birleştirildi.

Aşağıdaki her sütun, pozisyonsuz başlayan ayrı bir hesaptır. Üç getiriyi bileşik olarak birleştirip kesintisiz performans geçmişine dönüştürmeyin: hesapların sıfırlanması ve dönem sonu pozisyonları farklıdır. Süreleri de farklı olduğundan yüzdeler yıllık oranlar gibi karşılaştırılamaz.

Ana maliyet varsayımları sonrasında sabit 55/20 sonuçları
ÖlçütGeliştirme: Mayıs 2020–2022Doğrulama: 2023Ayrılmış: Ocak 2024–Temmuz 2026
Net hesap getirisi+170.39%+16.55%+11.55%
Dönem sonu özkaynağı, USDT27,039.0411,654.6011,154.96
Günlük kapanışlarla maksimum düşüş41.48%24.27%29.72%
Kapanmış işlemler / dönem sonunda açık5 / 04 / 18 / 0
Kapanmış işlem kazanma oranı60.00%25.00%37.50%
Kapanmış işlemlerin net kâr faktörü4.050.661.28
Ortalama günlük yatırım maruziyeti41.68%57.59%33.62%
Başlangıçta %90 ayıran al-tut getirisi+82.46%+139.71%+43.66%
Al-tut için günlük kapanışlarla maksimum düşüş75.56%18.90%51.05%

2023 sonucu, işlem özetlerinin neden yanıltabildiğini gösteriyor. Kapanmış dört işlem 669.03 USDT kaybettiği hâlde açık bir pozisyonun giriş maliyeti sonrası değerlenmiş kârı 2,323.63 USDT olduğu için hesap 1,654.60 USDT kazandı. Varsayımsal çıkış ücreti karşılığı ayırmıyoruz. Kapanmış işlem kâr faktörünün 0.66, toplam hesap getirisinin pozitif olması aynı anda doğru olabilir.

Kazanan hesaba güvenmeden önce kaybeden bir işlemi denetleyin

Ayrılmış dönemin ilk giriş sinyali 2 Ocak 2024'te oluştu. Strateji, 3 Ocak'taki 44,946.91 USDT ham açılış fiyatı beş baz puan yukarı kaydırılarak elde edilen 44,969.383455 seviyesinden alım yaptı. Toplam 9,000 USDT giriş bütçesiyle yaklaşık 0.19993623 BTC aldı. Giriş pozisyon değeri 8,991.008991 USDT, komisyon 8.991009 USDT oldu.

22 Ocak'taki çıkış sinyali, 23 Ocak'ta gerçekleşmeye dönüştü. 39,568.02 ham açılış, aleyhte satış kaymasıyla 39,548.23599 oldu. Satış değeri 7,907.125205 USDT idi; 7.907125 USDT komisyon sonrasında 7,899.218080 USDT kaldı. İlk girişte harcanan 9,000 USDT'yi çıkarın: net zarar 1,100.781920 USDT. Dokunulmamış 1,000 USDT nakitle birlikte, artık pozisyonsuz olan hesabın bakiyesi 8,899.218080 USDT oldu.

Ayrılmış dönemin ilk tamamlanmış işlemi; gösterilen tutarlar yuvarlanmıştır
KayıtDeğer
Giriş sinyali → gerçekleşme2 Ocak → 3 Ocak 2024
Giriş gerçekleşme fiyatı / BTC miktarı44,969.383455 / 0.19993623
Giriş pozisyon değeri + komisyon8,991.008991 + 8.991009 = 9,000.000000 USDT
Çıkış sinyali → gerçekleşme22 Ocak → 23 Ocak 2024
Satış değeri − komisyon7,907.125205 − 7.907125 = 7,899.218080 USDT
Net işlem kâr/zararı7,899.218080 − 9,000.000000 = −1,100.781920 USDT

Bu kayıt, yuvarlanmış bir yüzdeden daha iyi uygulama kontrolüdür. Sinyal zamanlamasını, aleyhte fiyatları, ücret matrahlarını ve işleme ayrılan nakdin getirisiyle (−12.23%) hesap değişimi (−11.01%) arasındaki farkı görünür kılar. Asistan bu tutarları mutabık hâle getiremiyorsa daha fazla optimizasyon yalnızca güvenilmez bir hesaplamayı karmaşıklaştırır.

Maliyetler önemli; burada kârın yoğunlaşması daha da önemli

Ayrılmış ana koşuda fiilen modellenen komisyonların toplamı 171.19 USDT oldu. Miktarla ağırlıklandırılan, ham açılışa göre aleyhte fiyat farkı ise 85.59 USDT idi. İkincisi, emir gerçekleşmesini referans fiyatla karşılaştıran bir ölçümdür: aleyhte gerçekleşme fiyatları bu farkı zaten içerir. Alım ve satım değerlerinin toplamı başlangıç sermayesinin 17.12 katına ulaştı; bu da her yön için küçük bir maliyetin neden birikebildiğini gösteriyor.

Aynı kuralları üç maliyet varsayımıyla yeniden çalıştırdık. Sıfır maliyetli koşu %13.99, ana koşu %11.55, daha yüksek maliyetli koşu %9.16 kazandırdı. Bunlar ayrı simülasyonlardır. Maliyetler, alınan miktarı ve daha sonraki yatırımlar için kalan nakdi değiştirir; dolayısıyla son bakiyeler arasındaki fark, ana koşunun komisyon ve fiyat kayması toplamından ibaret değildir.

Ayrılmış dönemde, her bir yön için maliyet varsayımlarına duyarlılık
Komisyon / aleyhte fiyat kaymasıNet getiriGünlük kapanışlarla maksimum düşüş
0 / 0 baz puan+13.99%28.77%
10 / 5 baz puan: ana varsayım+11.55%29.72%
20 / 10 baz puan+9.16%30.66%

Kazanan üç kapanmış işlem 5,244.53 USDT kazandırdı; diğer beşi 4,089.57 USDT kaybettirdi. Net kâr 1,154.96 USDT oldu. Birkaç kazanana bağımlılık trend izlemeyle tutarlı olabilir; ancak sekiz işlem, bu kazançların ne kadar güvenilir biçimde tekrarlanacağına dair az kanıt sağlar. En iyi üç kâr/zararı çıkarmak, bir yoğunlaşma incelemesidir; sonraki pozisyon büyüklükleri hiç değişmeden bu işlemleri atlayabilecek geçerli bir karşı-olgusal hesabı temsil etmez.

Sabit maliyetler bu getirilerin dışındadır. Gerçek hesapta, sürece gerçekten atfedilebilen veri, yazılım, model kullanımı ve barındırma maliyetlerini çıkarın; ardından ilgili kurallara göre vergileri değerlendirin. Deterministik günlük kural, her mumda LLM API çağrısı gerektirmez. Sıradan kodun yapabildiği bir hesaplamaya tekrarlanan gider eklemeyin.

Kazananı beğenmek yerine bütün arayışı hesaba katarak aşırı uyumdan kaçının

Aşırı uyum çoğu zaman resmî bir optimizasyon aracı çalışmadan başlar. Başka varlık deneyin, başlangıç tarihini değiştirin, filtre ekleyin, sonuca bakın ve çekici sürümü tutun: her seçim, fiilen yapılan arayışı genişletir. Geleneksel olarak ayrılmış test verisi, tekrar tekrar incelendiğinde geliştirme verisine dönüşebilir. Geriye dönük testte aşırı uyum araştırması bu seçim sorununu ele alır; eğitim/test ayrımı yapan her iş akışına genel bir güvenilirlik belgesi vermez. [5]

Dokuz geliştirme yapılandırmasını sabitledik: 40, 55 ve 70 günlük giriş pencerelerini 10, 20 ve 30 günlük çıkış pencereleriyle eşleştirdik. Tablo her net getiriyi gösteriyor. Sıralama ne olursa olsun ana 55/20 kuralı ana kural olarak kalıyor. Bazı yapılandırmalar aynı işlemleri ürettiği için dokuz satır, dokuz bağımsız doğrulama değildir.

Ana maliyetler sonrasında dokuz geliştirme net getirisinin tamamı
Giriş penceresiÇıkış 10 günÇıkış 20 günÇıkış 30 gün
40 gün+140.64%+164.32%+123.77%
55 gün+146.06%+170.39%: sabit ana kural+161.82%
70 gün+146.06%+170.39%+161.82%

Dokuzunun tamamı bu geliştirme aralığında kârlıydı. Bu, yakın parametrelerin oluşturduğu küçük alan için yararlı bağlamdır; ancak bir optimumu veya farklı varlıklarda ve piyasa rejimlerinde dayanıklılığı kanıtlamaz. Ana stratejinin geliştirme dönemindeki beş kapanmış işlemi, parametre iddiası için özellikle zayıf bir temeldir. Geriye dönük testte aşırı uyumun resmî olasılığını veya seçime göre düzeltilmiş anlamlılık düzeyini tahmin etmedik.

Kendi projenizde son tabloya giremeyen denemeleri saklayın. Sonraki örneklemi inceleyip kuralı değiştirirseniz değiştirilmiş stratejiyi dürüstçe tanımlayın: o örneklemi kullanmıştır. Yeni bir dosya adı, bilgi sınırını geri getirmez.

İstem 2 — ayarlamadan önce araştırma sürecini denetleyin
Bu strateji şartnamesini, deney günlüğünü ve kodu; ileriye bakış yanlılığı, test kümesinin tekrarlanan kullanımı ve kaydedilmemiş seçimler açısından inceleyin. Girdilerin ne zaman erişilebilir olduğunu ve emir gerçekleşme zamanlamasını izleyin. Şüphelenilen her uygulama hatası için başarısızlığı gösteren en küçük test verisini oluşturun. Hataları, modelleme varsayımlarından ve yatırım hipotezlerinden ayırın. Performansı iyileştirmek için parametreleri değiştirmeyin. Hangi sonuçların örneklem tarafından desteklenmediğini belirleyin.

İleri yürüyen test, seçim yöntemini değerlendirir; yine de kaybedebilir

İkincil deney farklı bir soru soruyor: araştırmacı her yıl geçmiş verilere bakarak dokuz varyanttan birini seçseydi ne olurdu? Her test dönemi için eğitim, 1 Mayıs 2020'de başlar ve önceki yılın 31 Aralık gününde biter. Net getirisi en yüksek varyant seçilir; eşitlikler önce daha düşük düşüşle, sonra giriş/çıkış pencere sırasıyla çözülür. Seçilen varyant, o test dönemi içinde yeniden ayarlanmadan sonraki yılda değerlendirilir. Kronolojik ayrım, bilgi akışının yönünü korur. [6]

Başlangıcı sabit ileri yürüyen test: önceki veriyle seçin, sonraki dönemi test edin
Test dönemiEğitim bitişiSeçilen giriş / çıkışTest net getirisiTest maksimum düşüşüAl-tut getirisi
202331 Aralık 202255 / 20+16.55%24.27%+139.71%
202431 Aralık 202355 / 30+38.44%19.37%+108.88%
202531 Aralık 202455 / 10−4.02%15.82%−5.83%
Ocak–Temmuz 202631 Aralık 202555 / 30−14.24%15.35%−25.52%

Seçilen algoritma 2025'te %4.02, Ocak–Temmuz 2026'da %14.24 kaybetti. Bir seçim yöntemi, zaman sırasına doğru biçimde uyduğu hâlde hayal kırıklığı yaratabilir. Geçmiş getiriyi optimize etmek, seçilen ayarın bir sonraki piyasada üstün olacağına kanıt sağlamaz.

Her test dönemi pozisyonsuz ve 10,000 USDT ile başlar. Bunlar, yıllar arasında pozisyonları ve birikmiş sermayeyi sürekli taşıyan tek hesap değil, birbirinden bağımsız sıfırlanmış test hesaplarıdır. 2026 dönemi kısmi yıldır. Getirilerini çarparak canlı işlemlere eşdeğer bir performans geçmişi oluşturmayın.

2024–2026 test tarihleri, ana ayrılmış tarihsel bölümle örtüşür; daha sonraki eğitim pencereleri de önceki test yıllarını içerir. Bu, açıkça ikincil bir incelemedir; başka bir dokunulmamış test örneklemi veya başlıktaki sonucun bağımsız tekrarı değildir.

Monte Carlo analizi: gerçekten simüle ettiğiniz belirsizliği anlatın

Bağımlı gözlemler için kullanılan yeniden örnekleme yöntemlerinden dairesel, sabit uzunluklu blok bootstrap uyguluyoruz. Girdi, sabit ana koşunun nakitte geçen günleri ve maliyetleri de içeren 943 günlük net portföy getirisidir. 1, 10 ve 30 günlük blok uzunluklarının her biri için 20261018 başlangıç değeriyle, aynı 943 günlük ufukta 5,000 senaryo üretiyoruz. Bloklar örneklemin sonundan başına sarılabilir; son blok gereken uzunlukta kesilir. [7]

Her simülasyon senaryosu örneklenen getirileri bileşik olarak uygular ve kendi düşüşünü hesaplar. Bu işlem yeni BTC fiyatlarını simüle etmez, kırılım sinyallerini yeniden çalıştırmaz veya yeni bir sıralamada işlem maliyetlerini tekrar hesaplamaz. Zaten gözlenmiş portföy getirilerini yeniden düzenler. Bir günlük blok, ardışık sıralamayı ortadan kaldırır; daha uzun bloklar yerel dizileri korur, ancak tarihsel rejimin tamamını korumaz. Hiçbiri girdide olmayan bir kriz eklemez.

Simüle edilen dönem sonu zarar oranları %39.68 ile %42.66 arasında değişiyor. Bunlar bu yeniden örnekleme deneyinin koşullu çıktılarıdır; stratejinin gelecek 943 günde para kaybetmesinin tahmin edilmiş olasılıkları değildir. Blok uzunluğuna duyarlılığı, en rahatlatıcı sütunu seçmek yerine koruyup göstermek başlı başına değerlidir.

Koşullu bootstrap çıktıları; getiriler simüle edilen 943 günün birikimli sonucudur
Blok uzunluğuDönem sonu getirisi P05 / medyan / P95Maksimum düşüş medyan / P95Zarar oranıDüşüş ≥20% oranı
1 gün−44.45% / +11.82% / +126.07%34.20% / 56.59%39.72%94.12%
10 gün−41.73% / +10.97% / +124.93%32.65% / 53.35%39.68%93.20%
30 gün−46.51% / +8.87% / +151.72%34.38% / 56.34%42.66%94.60%

5,000 senaryoda zarar oranının Monte Carlo standart hatası, √[p(1−p)/5,000] hesabıyla yaklaşık 0.69–0.70 yüzde puandır. Bu, simülasyon sayısının sınırlı olmasından doğan gürültüyü ölçer. Veri kaynağı, işlem kuralı, gelecekteki rejimler ve yeniden örnekleme varsayımlarının uygunluğu hakkındaki belirsizliği içermez. Bir milyon senaryo çalıştırmak, daha fazla piyasa geçmişi sağlamadan simülasyon gürültüsünü küçültürdü. Monte Carlo hatasını incelenen belirsizlikten ayrı raporlamak, yerleşik simülasyon uygulamasıdır. [8]

Sonucu denetleyin, ardından daha iyi bir araştırma sorusu sorun

Python uygulaması, normalize edilmiş günlük gözlemlerden hesaplama yapmak için standart kütüphaneyi kullanıyor. Araştırma kayıtları dönem raporlarını, dokuz geliştirme varyantının tamamını, ikincil ileri yürüyen test sonuçlarını ve bootstrap özetlerini saklıyor. Kaynak sürümleri ve özetler, bu hesaplamalarda kullanılan gözlemleri tanımlıyor.

Yararlı bir denetim, ayrılmış dönemin 11,154.96 USDT son özkaynağı ve yukarıda açıklanan ilk zararlı işlemle başlar. Son getiriyi yorumlamadan önce her sinyali, gerçekleşmeyi, komisyonu ve nakit değişimini mutabık hâle getirin. Hesaplamalarımız tam hassasiyeti korur; yazıdaki yuvarlanmış tablolar sunum içindir ve sonraki hesaplamalarda asıl girdinin yerini tutmaz.

Ardından sorunuzun hangi kanıtı gerektirdiğine karar verin. Veri akışının doğruluğunu incelemek için bağımsız veri kümesi edinin. Emir gerçekleştirmeyi incelemek için gerçekçi emir kısıtları altında karar zamanını, gönderim zamanını, kabul bildirimini, gerçekleşme fiyatını ve miktarı kaydedin. Değiştirilmiş bir parametre seçme sürecini araştırmak için başka bir kronolojik dönemi değerlendirmeden önce seçim kuralını yazın. Bunlar farklı deneylerdir; günlükte de ayrı kalmalıdır.

İstem 3 — geriye dönük test ile canlı çalışma arasındaki farkı araştırın
Bu dosyalardaki zaman damgalı strateji sinyallerini, gönderilen emirleri, teyit edilmiş gerçekleşmeleri ve mutabık hâle getirilmiş pozisyonları karşılaştırın. İlk ayrışmayı belirleyin. Bunu veri, zamanlama, pozisyon büyüklüğü, emir gerçekleştirme veya muhasebe olarak sınıflandırın ve her bulguyu kayıt kimlikleriyle destekleyin. Stratejiyi yeniden ayarlamayın. Bir mutabakat tablosu ve varsa hatanın yeniden üretilebildiği en küçük örneği sunun.

Amacınız işlem günlüğü veya fırsat tarayıcısıysa aynı disiplin geçerlidir. Kural sürümünü ve zaman damgalı işlem koşullarını sonuçtan önce saklayın; işlemlerin yanında atlanan ve reddedilen sinyalleri de koruyun. Asistandan bu günlüğü gerçekleşme kayıtlarıyla mutabık hâle getirmesini ve farkları açıklamasını isteyin. İşlem sonrası anlatı, ilerideki sonucu ölçülebilen kayıtlı bir karardan daha az yararlıdır.

İstem 4 — işlem günlüğünü sonradan üretilen hikâyeler olmadan inceleyin
Yalnızca her karardan önce kaydedilmiş işlem koşulu tanımlarını ve bilgileri kullanın. İşleme alınan, atlanan ve reddedilen sinyalleri dâhil edin. Gerçek işlemleri emir kayıtlarıyla mutabık hâle getirin. Kurallara uyumu, tekrarlanan uygulama hatalarını ve sonuçları önceden belirlenmiş işlem kategorilerine göre raporlayın. Betimleyici örüntüleri, bir kuralı değiştirmeye yetecek kanıttan ayırın. Eksik kayıtları ve küçük örneklemleri işaretleyin.

Buna kârlı bir işlem algoritması der miyiz?

Dar anlamda tarihsel muhasebe açısından evet: ana ayrılmış dönem hesabı, varsayılan komisyon ve fiyat kaymasından sonra 1,154.96 USDT kazandı. Daha güçlü yatırım anlamında, yani kullanıma almayı hak eden, kanıtlanmış ve tekrarlanabilir avantaja sahip algoritma açısından ise kanıt yetersizdir. Tek bir üçüncü taraf kripto arşivindeki sekiz kapanmış işlem bu iddiayı doğrulamaz.

Karar, yatırım hedeflerine de bağlıdır. Ana dönemde al-tut karşılaştırmasından daha fazla birikimli getiri arayan okur bunu elde etmedi. Günlük kapanışlarla yaklaşık %30 düşüşü tolere edemeyen okur, gözlenen bu seyri reddederdi. Bunlar olası yatırımcı gereksinimlerine göre değerlendirmelerdir; sonuçları görmeden önce gizlice belirlediğimiz kabul eşikleri değildir.

Yararlı sonraki adım; başlangıç tarihi sinyaller gelmeden kaydedilmiş, her kararı işlem yapılabilir piyasayla mutabık hâle getirme planı olan ve kuralları sabitlenmiş ileriye dönük sanal işlem testidir. Önerilen bütün değişiklikleri, test edilen sürümü sessizce değiştirmeden kaydedin. Sanal gerçekleşmeler de gerçekçi varsayımlar gerektirir; daha sonra küçük tutarla canlı işlem yapmaya karar verilirse bu, gerçek gerçekleşmeler ve operasyonlar hakkında ek soruları yanıtlar.

ChatGPT, Claude, Codex veya Claude Code'un pratik değeri, bireyin bu araştırma altyapısını daha hızlı kurup inceleyebilmesidir. Altyapı, istenmeyen bir yanıt da verebilir. Bu projede kârlı bir tarihsel hesap, önemli düşüşler, al-tut karşılaştırmasının altında getiri ve sonucu belirleyen az sayıda işlem ortaya çıkardı. Bu olguları yayımlamak, asistandan stratejiyi daha ikna edici biçimde anlatmasını istemekten daha yararlıdır.

10 / DUE DILIGENCE

İşlem algoritmanızı kârlı diye tanımlamadan önce

  1. Giriş, çıkış, zamanlama ve miktar kurallarını, iki bağımsız programcının aynı işlemleri üreteceği açıklıkta yazın.
  2. Kaynak geçmişini, değişmez bir veri kopyasını veya özetini ve eksik gözlemlerin kaydını saklayın.
  3. Gelecekteki verileri değiştirmenin önceki kararları değiştiremediğini gösterin.
  4. Başlangıç özkaynağı ile kapanmış ve açık kâr/zararı, son özkaynakla mutabık hâle getirin.
  5. Aleyhte gerçekleşme varsayımlarını, komisyonları ve hesabınız için geçerli işletim maliyetlerini dâhil edin.
  6. Uygun bir karşılaştırma gösterin; piyasa maruziyeti ve risk farklarını açıklayın.
  7. Başarısız ve vazgeçilmiş denemeler dâhil, test edilen her yapılandırmayı saklayın.
  8. Parametre seçimini sonraki değerlendirmeden ayırın ve yeniden kullanılan test dönemlerini açıklayın.
  9. Simüle edilen zarar sıklıklarını, kullanılan modele ve tarihsel girdiye koşullu olarak ele alın.
  10. İleriye dönük testten önce yeni sürümü sabitleyin; kayıtlı sinyalleri gerçek veya sanal gerçekleşmelerle mutabık hâle getirin.
FAQ / DIRECT ANSWERS

Okurun gerçekten yanıtını bilmesi gereken sorular

ChatGPT veya Claude kârlı bir işlem algoritması kodlayabilir mi?

Uygulamaya, test etmeye ve hata ayıklamaya yardımcı olabilirler. Sabit algoritmamız, ayrılmış tarihsel dönemde varsayılan değişken işlem maliyetlerinden sonra %11.55 kazandı; ancak al-tut karşılaştırmasının gerisinde kaldı ve %29.72 düşüş yaşadı. Bu, söz konusu geriye dönük test hakkında dar kapsamlı bir ifadeyi destekler. Asistanlardan herhangi birinin istenildiğinde güvenilir biçimde gelecekte kâr üretebildiğini göstermez.

İşlem botu için hangisi daha iyi: ChatGPT, Claude, Codex veya Claude Code?

Bu çalışma bunları sıralamıyor. Araştırma kodu Codex'te geliştirildi; kontrollü ChatGPT–Claude karşılaştırması yapılmadı. Her aracı aynı şartname, test verileri ve kod deposu görevi üzerinde değerlendirin; önemli hataları ve inceleme emeğini ölçün. Ürünün kod yazabilmesi, stratejinin yatırım değerinden farklıdır.

Python işlem botu mu, Pine Script stratejisi mi geliştirmeliyim?

Pine Script grafik inceleme, strateji simülasyonu ve alarmlar için yararlıdır. Python özel veri, muhasebe, parametre deneyleri, portföyler ve tekrarlanabilir araştırma için kullanışlıdır. Burada yayımlanan sayısal sonuçları Python sağlıyor. Pine sürümü yazıldı ve statik olarak incelendi; ancak TradingView'de derlenmedi veya çalıştırılmadı ve miktar ile fiyat kayması yöntemleri farklıdır.

İşlem stratejisinde aşırı uyumdan nasıl kaçınırım?

Takdire bağlı seçimleri azaltın, her denemeyi kaydedin, sonraki değerlendirmeden önce seçim kurallarını sabitleyin ve kronolojik sırayı koruyun. Yakın parametreleri inceleyin ve seçim yönteminin tamamını ileri yürüyen test dönemleriyle değerlendirin. Bu adımlar kendini yanıltma fırsatlarını azaltır; geriye kalan kuralın kalıcı avantajı olduğunu garanti etmez.

Monte Carlo simülasyonu stratejinin para kazandıracağını kanıtlar mı?

Hayır. Dairesel blok bootstrap uygulamamız, gözlenmiş günlük net portföy getirilerini yeniden düzenliyor. Sonuçları o örnekleme, blok uzunluğuna ve yeniden örnekleme varsayımlarına bağlıdır. Strateji kararlarını yeniden üretmez, girdide olmayan krizleri keşfetmez veya gerçek dünyadaki kâr olasılığını güvenilir biçimde tahmin etmez.

Kârlı bir geriye dönük test, canlı işlemde neden para kaybedebilir?

Tarihsel avantaj ortadan kalkabilir, küçük örneklem onu olduğundan iyi gösterebilir veya uygulama o anda erişilemeyen bilgi kullanabilir. Canlı gerçekleşmeler; alış-satış farkı, gecikme, emir büyüklüğü, kısmi gerçekleşmeler ve kesintiler nedeniyle de değişebilir. Stratejiyi hemen yeniden ayarlamak yerine zaman damgalı sinyalleri, talep edilen emirleri, teyit edilmiş gerçekleşmeleri ve mutabık hâle getirilmiş pozisyonları karşılaştırarak farkı bulun.

Bu işlem algoritması ne kadar sermaye gerektirir?

10,000 USDT başlangıç bakiyesi muhasebe tercihidir; asgari tutar önerisi değildir. Model kesirli BTC'ye izin verir, platformun lot kısıtlarını ve sabit işletim maliyetlerini dışarıda bırakır. Gerçek uygulanabilirlik; emir sınırlarına, likiditeye, aboneliklere, barındırmaya, vergilere ve karşılayabileceğiniz kayba bağlıdır. Sermayeyi değiştirmek, sabit maliyetlerin önemini de değiştirir.

Bu tarihsel Python modeli otomatik işlem yapar mı?

Bu çalışma için canlı emir iletim bağlantısı geliştirilmedi. Python uygulaması tarihsel sinyalleri, açık varsayımlar altındaki gerçekleşmeleri ve hesap sonuçlarını hesaplar. Canlı sistem ayrıca emir kabul bildirimleri, kısmi gerçekleşme yönetimi, yeniden bağlantı mantığı, pozisyon mutabakatı ve yinelenen ya da güncelliğini yitirmiş emirler için kontroller gerektirir.

Kaynaklar ve tekrarlanabilirlik

Sayısal sonuçlar, kaynağı belirtilen arşivden TensorParadigm'in yaptığı hesaplamalardır. Araştırma kayıtlarımız geçerli protokolü, değişiklik kayıtlarını, özetleri, normalize verileri, programları, testleri ve eksiksiz sonuçları saklıyor. Dış kaynaklar veri atfını, ürün yeteneklerini ve yöntemleri destekler; bu stratejiyi onaylamaz.

  1. humblefool06 tarihsel BTC-USDT arşivi: veri kümesi, sabitlenmiş sürüm ve yayımlayanın lisans beyanı
  2. TradingView Pine Script belgeleri: stratejiler, aracı kurum emülatörü ve işlem maliyetleri
  3. OpenAI belgeleri: kod üretimi ve Codex
  4. Anthropic belgeleri: Claude Code'a genel bakış
  5. Bailey ve diğerleri: geriye dönük testte aşırı uyum olasılığı
  6. Scikit-learn belgeleri: zaman serilerinin kronolojik ayrılması
  7. Politis ve Romano: durağan veriler için dairesel blok yeniden örnekleme yöntemi
  8. Morris, White ve Crowther: istatistiksel yöntemleri değerlendirmede simülasyon çalışmalarının kullanımı
  9. Creative Commons Attribution 4.0: atıf ve uyarlama koşulları

Eğitim amaçlı geriye dönük araştırmadır. Getiriler modellenen değişken işlem maliyetlerini içerir; vergileri ve sabit işletim maliyetlerini içermez. Canlı işlem veya yapay zekâ modellerini karşılaştıran yatırım deneyi yapılmamıştır. Tarihsel ve simüle edilmiş sonuçlar gelecekteki kârlılığı kanıtlamaz.