Ticarette makine öğrenimi: teori, pratik, ticaret ve daha fazlası - sayfa 1532

 
Aleksey Nikolaev :

Ya da yuvarlanan liste sistemleri portföyü gibi bir şey.

Tam olarak ne sayılacak?

 
Alexey Nikolaev :

Ya da yuvarlanan liste sistemleri portföyü gibi bir şey.

o zaman bir çoklu sınıftır. Şu anda hangi sayfanın daha iyi işlem göreceğini seçecek bir 2. model yapın. Faydaları açık değildir ve yapılması daha zordur.

 
Maksim Dmitrievski :

Pekala, teoriyle başlayalım. Örneğin, satış ve satın alma için ayrı ayrı model seçmenin ne anlamı var?

Alım-satım için olmayan her şey ve tam tersi.

Benim ideolojim, temel ticaret stratejisini geliştirmektir ve strateji trend halindedir, bu nedenle sıfırdan geri dönüşler sağlamaz - bir daireden pazar girişleri ve "Girme" özünde yanlış daire kırılmalarını ortadan kaldırır.

Ayrıca, uzun ZZ segmentlerinin zirveleri etrafındaki karlı pozisyonları kapatmak için modeller denedim ve sonuç tatmin edici değil, yani. ya orada tahmin yeteneği daha az ya da benim tahmincilerim orada çok iyi çalışmıyor ya da belki her ikisi de, bu yüzden bir tersine çevirme stratejisi kullanmıyorum. Aksine burada iki farklı model yetiştirmenin daha doğru olduğunu düşünüyorum.

Maksim Dmitrievski :

girdileri daha yüksek bir eşikten filtreleyebildiğiniz zaman. "Ticaret yapma" sınıfına model tarafından aşırı ağırlık verilebilir, bu nedenle modelin hatası azalacaktır ve genel olarak tahmin (genelleme) yeteneği düşecektir.

CatBoost ile yapılan deneylerde, modelden eşik tarafından belirlendiği yerde ticaret yapmak / ticaret yapmamak için ikili bir sınıflandırma ile neredeyse böyle bir yaklaşım kullanıyorum, ancak sorun şu ki model bir ilke üzerine inşa edilmiştir. elektrik süpürgesi, iyi ve kötü her şeyi emiyor ve çıktıda cıvıl cıvıl olabilen, ancak az sayıda girdi içeren bir model alıyorum.

Maksim Dmitrievski :

İkinci modelin anlamı, 1. modelin 1. ve 2. tür hatalara sahip olacağıdır - yanlış pozitif ve yanlış negatif. Onları kaldırmakla ilgileniyoruz. Bunu yapmak için, aynı özellikleri 2. modelin girişine beslersiniz ve ilk modelin ticaretinin sonucu çıktı, burada 0 - işlem karlı, 1 - işlem kârsızdı. İkinci sınıflandırıcıyı eğitir ve yalnızca 0 gösterdiğinde işlem yaparsınız, yani. 1. modelin sinyallerini filtreler. Karsız işlemler trende neredeyse kaybolacak, testte test etmeniz gerekiyor - bu tam zamanı.

İkinci modeli yalnızca trende eğitmekle kalmaz, aynı zamanda OOS'u da yakalarsınız, ardından yeni verilerdeki işlemleri düzeltir - bunlar iki tanedir. Peki, o zaman testler.

Yani tam olarak yaptığım şey buydu, sadece bağlantısız tahmin ediciler kullanmadım, ama zaten tahmin edici olarak sayfalar, burada 1, tahmin edicideki sayfadan gelen sinyal, ancak hedefte doğru sınıflandırma cevapları. Tabii ki benim yöntemim yeni tahmin edici ilişkiler bulmaya izin vermiyor, ancak mevcut ilişkiler arasında ilişkiler aramaya izin veriyor.

Yönteminizi deneyeceğim, teşekkürler. Ancak görünüşe göre zamandan tasarruf etmek için bu konseptte sadece CatBoost modeli şeklinde uygulanabiliyor ve korkarım ki yine her şeyi kesecek.

 
Maksim Dmitrievski :

o zaman bir çoklu sınıftır. Şu anda hangi sayfanın daha iyi işlem göreceğini seçecek bir 2. model yapın. Yararları açık değildir ve yapılması daha zordur.

Hayır, çok fazla sayfa var, böyle bir sınıflandırma işe yaramaz ...

 
Alexey Vyazmikin :

Benim ideolojim, temel ticaret stratejisini geliştirmektir ve strateji trend halindedir, bu nedenle sıfırdan geri dönüşler sağlamaz - bir daireden pazar girişleri ve "Girme" özünde yanlış daire kırılmalarını ortadan kaldırır.

Ayrıca, uzun ZZ segmentlerinin zirveleri etrafındaki karlı pozisyonları kapatmak için modeller denedim ve sonuç tatmin edici değil, yani. ya orada tahmin yeteneği daha az ya da benim tahmincilerim orada çok iyi çalışmıyor ya da belki her ikisi de, bu yüzden bir tersine çevirme stratejisi kullanmıyorum. Aksine burada iki farklı model yetiştirmenin daha doğru olduğunu düşünüyorum.

CatBoost ile yapılan deneylerde, modelden eşik tarafından belirlendiği yerde ticaret yapmak / ticaret yapmamak için ikili bir sınıflandırma ile neredeyse böyle bir yaklaşım kullanıyorum, ancak sorun şu ki model bir ilke üzerine inşa edilmiştir. elektrikli süpürge, iyi ve kötü her şeyi emiyor ve çıktıda, cıvıl cıvıl olabilen, ancak az sayıda girdi içeren bir model alıyorum.

Yani tam olarak yaptığım şey buydu, sadece bağlantısız tahmin ediciler kullanmadım, ama zaten tahmin edici olarak sayfalar, burada 1, tahmin edicideki sayfadan gelen sinyal, ancak hedefte doğru sınıflandırma cevapları. Tabii ki benim yöntemim yeni öngörücü ilişkiler bulmaya izin vermiyor, ancak mevcut ilişkiler arasında ilişkiler aramaya izin veriyor.

Yönteminizi deneyeceğim, teşekkürler. Ancak görünüşe göre zamandan tasarruf etmek için bu konseptte sadece CatBoost modeli şeklinde uygulanabiliyor ve korkarım ki yine her şeyi kesecek.

Geri dönüşler bu şekilde olmamalıdır, yanlış sinyaller 2. model tarafından basitçe filtrelenecektir. Peki, uygulamaya ve ne istediğinize bağlı.

O zaman neden çok fazla kaybedilen işlem olduğu garip mi yoksa OOS'tan bir resim mi? Evet, 2. anlaşma modelini kullanmak için filtrelenecek çok şey olmalı, bunun için yapay olarak anlaşmalar bile ekleyebilirsiniz (oversampling)

 
Maksim Dmitrievski :

Geri dönüşler bu şekilde olmamalıdır, yanlış sinyaller 2. model tarafından basitçe filtrelenecektir. Peki, uygulamaya ve ne istediğinize bağlı.

O zaman neden çok fazla kaybedilen işlem olduğu garip mi yoksa OOS'tan bir resim mi? Evet, 2. anlaşma modelini kullanmak için filtrelenecek çok şey olmalı, bunun için yapay olarak anlaşmalar bile ekleyebilirsiniz (oversampling)

Yukarıdaki ekran görüntülerinde modelin eğitimine hiçbir şekilde katılmayan veriler üzerinde testler vardı.

İşte eğitimin sonuçları, ekran görüntüleri - eğitimin yapıldığı verilerle ilgili ilk sayfa listem (sadece 1/5'lik bir bölüm alındı)

Kârlı uzun işlemlerin %52.86 olduğuna dikkat edin

Diğer sayfaların cevapları üzerine inşa edilmiş bir ağaç eklendi.

Ve sonuçlar iyileşti, karlı uzun işlemler şimdiden %79,56 oldu.

Sonuç olarak, yaklaşım bir bütün olarak işe yarıyor, ancak gerçek uygulamada çıktı o kadar iyi değil - neden böyle, muhtemelen eğitimin yapıldığı bazı sayfalar sabit bağlantılar taşımamaktadır veya bu bağlantılar azdır. Her yaprak numunede %1-3 aralığında bir tepkiye sahiptir.

 
Ayrıca bir seçenek düşünüyorum, sınıflandırmayı değil, gerilemeyi denemek ve son derece karlı yaprak kombinasyonlarını seçmek, belki para açısından daha iyi bir etki olacaktır.
 
Alexey Vyazmikin :

Yukarıdaki ekran görüntülerinde modelin eğitimine hiçbir şekilde katılmayan veriler üzerinde testler vardı.

İşte eğitimin sonuçları, ekran görüntüleri - eğitimin yapıldığı verilerle ilgili ilk sayfa listem (sadece 1/5'lik bir bölüm alındı)

Kârlı uzun işlemlerin %52.86 olduğuna dikkat edin

Diğer sayfaların cevapları üzerine inşa edilmiş bir ağaç eklendi.

Ve sonuçlar iyileşti, karlı uzun işlemler şimdiden %79,56 oldu.

Sonuç olarak, yaklaşım bir bütün olarak işe yarıyor, ancak gerçek uygulamada çıktı o kadar iyi değil - neden böyle, muhtemelen eğitimin yapıldığı bazı sayfalar sabit bağlantılar taşımamaktadır veya bu bağlantılar azdır. Her yaprak numunede %1-3 aralığında bir tepkiye sahiptir.

Peki, sadece sahip olduklarınızı iyileştirmeye çalışırsanız, o zaman bu kıvrımlı bir varyanttır. Birkaç parçaya bölün ve 1. parçayı bazı parçalarda, 2. parçayı diğer parçalarda eğitin. 500 kata kadar yaptım. Belki daha az tabii. Biraz iyileştirme sağlar.

 
Maksim Dmitrievski :

Peki, sadece sahip olduklarınızı iyileştirmeye çalışırsanız, o zaman bu kıvrımlı bir varyanttır. Birkaç parçaya bölün ve 1. parçayı bazı parçalarda, 2. parçayı diğer parçalarda eğitin. 500 kata kadar yaptım. Belki daha az tabii. Biraz iyileştirme sağlar.

Örneği bölün ve birkaç modeli eğitin, ya da ne?

Doğru, sadece yaklaşık 14.000 satırlık bir seçimim var ...

 
Alexey Vyazmikin :

Örneği bölün ve birkaç modeli eğitin, ya da ne?

Doğru, sadece yaklaşık 14.000 satırlık bir seçimim var ...

yukarıda yazdım. Parçaların bir yarısında ana model, diğer yarısında ikinci düzeltici

5-10 kat yeterli, belki daha fazla
Neden: