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

 
Dr.Tüccar :

Sadece 2 sınıf tahmin ediyorum - "al" ve "sat", yani her zaman bir tür anlaşma açık olacak. Bir modelle çalışıyorum, tamamen zıt sonuçlar veren iki model yapmak için hiçbir neden göremiyorum.

Ama kademeli olarak 3 sınıfa geçmek istiyorum - "satın al" / "her şeyi kapat ve ticaret yapma" / "sat". Bu, daha karmaşık bir strateji ile ticaret yapmanızı sağlayacaktır. Birkaç kez denedim, ancak üç sınıf için eğitim modelleriyle ilgili sorunlar yaşadım, özellikle model, sonucun daha sonra sınıflara yuvarlanmasıyla regresyon ise.
Orijinal sınıfların 1/0/-1'in ilk model için 1/0/0'a ( yalnızca satın al ) ve ikinci model için 0/0/1'e (satış) dönüştürüldüğü iki model oluşturmaya değer olduğunu düşünüyorum. bir tek). Bu, her modelde dengesiz sınıflara yol açacaktır (bir sınıfa sahip örneklerin sayısı diğerinden çok daha fazladır), ancak bu koşullarda çalışan modelleri değerlendirmek için iyi ölçümler buldum - F-skoru ve kappa. Henüz bu yönde gerçekten hiçbir şey yapılmadı, ancak böyle bir plan oldukça mümkün görünüyor.

Bu dalın ele alınan yöntemlerindeki problemler, sadece zaman serilerinin durağan olmamasında (aynı kalıpların fiyat ve zaman açısından farklı ölçeklerinde) değil, aynı zamanda kalıpların değişkenliğindedir. Yani, dün büyümeyi ön plana çıkaran bu modeller, bugün müteakip bir düzlük ve hatta bir düşüş anlamına gelebilir.

Alım satım için ayrı eğitim bu sorunları kısmen çözer. Birkaç sayfa önce yazdım, nasıl, iki ızgaram var, biri sinyalleri almayı (1; 0) - satın almayı veya hiçbir şey yapmamayı ve diğeri satmayı (-1; 0) - satmayı veya hiçbir şey yapmamayı öğreniyor. Bu iki şebekenin çıkışında devreye giden sinyalleri azaltan bir anahtar (-1; 0; 1) bulunur. Böyle bir şebeke komitesinin çalışması çok ilginç olduğu ortaya çıkıyor: ilk başta OOS için iyi sinyaller var, yavaş yavaş sinyal sayısı düşüyor, yani daha sık olarak çıkışta cevap 0'dır (kalıplar artık tanınmaz ve bu yanlış alım satım sinyallerinden daha iyidir) ve bir süre sonra yanlış alım satım sinyalleri görünmeye başlar (kalıplar değişti). Bu nedenle, zaten belirli bir eşiğin altındaki sinyal sayısını azaltma aşamasında, yeni veriler üzerinde yeni eğitim ihtiyacının başlangıcı olarak kabul edilebilir ve düşünülmelidir.

Ama genel olarak aslında böyle bir "eğitim" ve "eğitim" yoktur. oc için her türlü çapraz doğrulama ve kontrol, onlardan beklenen etkiyi vermez ve veremez. Gerçek şu ki, bu tür hileler bir aramadan başka bir şey değildir ve daha sonra hem eğitim alanında hem de doğrulama alanında yaklaşık olarak tatmin edici bir şekilde çalışan bu değerlerin bir seçimidir, yani, bu parametre seti başlangıçta tüm olası olasılıkları arasında zaten mevcuttur. seçenekler ve bu, tüm tarih boyunca hemen seçim yapmakla eşdeğerdir.

Yine de, iki modelin (benim durumumda, iki ızgara) kullanılması, bence, bugün mevcut olan "makine öğrenimi" yöntemleri arasında uygulanabilecek en iyisidir. Bu eğitim veya eğitim değil, modeli optimize etmenin bir yolu.

Bugün gerçek bir eğitim yok. Aynı veya benzer kalıpların tanınması, öğrenmenin sonucu değil, ezberlemenin sonucudur. Öğrenme, (en ilkel olsa da) belirli bir düşünce sürecini içermelidir; bu, kişinin yeni bilgi alırken akıl yürütmesine ve sonuçlar çıkarmasına ve ayrıca bağımsız olarak yeni bilgiler üretme becerisine izin verir. Piyasa tam da böyle bir yaklaşım gerektiriyor - bildiğim kadarıyla bugün olmayan bir düşünce. Ve bugün kullandığımız şey, ne yazık ki düşünmek değil, ezberlemek.

 
Andrey Dik :

Ama genel olarak aslında böyle bir "eğitim" ve "eğitim" yoktur. Oos için her türlü çapraz doğrulama ve kontrol onlardan beklenen etkiyi vermez ve veremez. Gerçek şu ki, bu tür hileler bir aramadan başka bir şey değildir ve daha sonra hem eğitim alanında hem de doğrulama alanında yaklaşık olarak tatmin edici bir şekilde çalışan bu değerlerin bir seçimidir, yani, bu parametre seti başlangıçta tüm olası olasılıkları arasında zaten mevcuttur. seçenekler ve bu, tüm tarih boyunca hemen seçim yapmakla eşdeğerdir.

Çapraz doğrulamayı geçen ancak yeni veriler üzerinde testi geçemeyen modeller var. Ve çapraz doğrulamayı geçebilen modeller var ve bundan sonra bir şekilde artı olarak bir şeyler takas ediyorlar. Ancak model çapraz doğrulamayı geçmediyse, onunla yeni veriler üzerinde ticaret yapmaya çalışmanın bir anlamı yoktur.
Bence bu, tahmin edicileri ve model parametrelerini seçmek için çok iyi bir ilk adım. Sonraki, modelin (veya model parametrelerine ve tahmin edicilere uyan buluşsal yöntemin) yeni veriler üzerinde çalışıp çalışmayacağını belirlemek için bir ileri sarma testidir. Yapamıyorsa, bir şeylerin değişmesi gerekir.

Burada iki nöron var - parametrelerini tavandan almadın, değil mi? Katmanlar, öğrenme hızı, engelleme, ağırlık kontrolü ve nöronların sahip olduğu düzinelerce başka parametre. Muhtemelen, özünde çapraz doğrulama olan uygun parametreleri belirlemek için ileriye dönük test gibi bir şey yaptınız. Varsayılan parametrelerle sadece iki nöron alıp hemen kârlı ticarete başlayabileceğinize inanmıyorum.

 
Dr.Tüccar :

Varsayılan parametrelerle sadece iki nöron alıp hemen kârlı ticarete başlayabileceğinize inanmıyorum.

Niye ya?
 
Dr.Tüccar :

1. Çapraz doğrulamayı geçen ancak yeni veriler üzerinde testi geçemeyen modeller vardır.

2. Ve çapraz doğrulamayı geçebilen modeller var ve bundan sonra bir şekilde artıda bir şeyler takas ediyorlar.

3. Ancak model çapraz doğrulamayı geçmediyse, yeni veriler üzerinde onunla ticaret yapmaya çalışmanın bir anlamı yoktur.

4. Bence bu, tahmin edicileri ve model parametrelerini seçmek için çok iyi bir ilk adım.

5. Sonraki - modelin yeni veriler üzerinde çalışıp çalışmadığını belirlemek için ileri sarma testi. Yapamıyorsa, bir şeylerin değişmesi gerekir.

6. Burada iki nöron var - parametrelerini tavandan almadın, değil mi? Katmanlar, öğrenme hızı, engelleme, ağırlık kontrolü ve nöronların sahip olduğu düzinelerce başka parametre. Muhtemelen, özünde çapraz doğrulama olan uygun parametreleri belirlemek için ileriye dönük test gibi bir şey yaptınız. Varsayılan parametrelerle sadece iki nöron alıp hemen kârlı ticarete başlayabileceğinize inanmıyorum.

1. Evet. Bu, modelin kötü olduğu anlamına gelmez. Bu, sağlanan veri miktarı için modelin "yetersiz belleği" anlamına gelebilir veya eğitim ve doğrulama siteleri de dahil olmak üzere tüm site için uygun olan parametre kümesinin bulunmadığı anlamına gelebilir. Sorun şu ki, yeni veriler üzerinde başarısız testlerin sorununun tam olarak ne olduğunu belirlemenin bir yolu yok.

2. Evet. "Yeterli hafıza" anlamına gelir. Aynı şeyi, yalnızca eğitim verilerinin miktarını azaltarak 1. adımda elde edebilirsiniz. Bilinmeyen verilerden bir artı elde edilmesi, sistemin bildikleriyle aynı veya çok benzer kalıplar olduğu ve aynı zamanda tam olarak daha önce meydana gelen piyasa tepkileri olduğu için tamamen "şanslı" olarak kabul edilebilir. karşılık gelen desenler. Sorun şu ki, kalıplar sürekli olarak yavaş yavaş ve bazen aniden değişiyor ve gelecek için hiçbir garanti yok.

3. Evet. Ama yukarıda belirtilen nedenlerden dolayı, eğer geçerse çok daha kötü değil.

4. Evet, iyi. Ancak, gelecekte modelin sağlamlığına güven sağlamak için değil, yalnızca doğrulama geçişlerini almak için, başka bir şey değil.

5. Sistemin performansını kontrol etmenin tek yolu ileri sarmadır. Tek bir. Bana göre en az %55-60 verimli (yani “eğitim” alanlarına göre %30 veya daha fazla verim düşüşü olan) bir sistem oluşturmak mümkünse o zaman başarının sağlandığını varsayabiliriz. elde edildi. Ancak o zaman bile bu, yalnızca piyasa modellerindeki değişim oranı ile sistemin gerekli miktarda bilgiyi hatırlama yeteneği arasında bir uzlaşmanın bulunduğu anlamına gelir, ancak bu, sistemin 30 yılına kadar "aptal" hale geldiği anlamına gelmez. %, ancak sistemin yeni veya değiştirilmiş eskilerin %30'unu tanımayacağı anlamına gelir.

6. Seslendirdiğim iki nöronlu yaklaşım, "öğrenme" anlamına gelmiyor. Bu sadece aynı "hatırlama", sadece zor bir şekilde uygulandı. Eskilerin unutulması ve yeni kalıpların tanınmaması, tıpkı sizin yaptığınız gibi olur, ancak alışılmamış kalıplarla alım satım gerçekleşmez, alım satım zamanla azalır ve ardından yanlış sinyaller başlar. İleriye dönük test yapıyorum (yaptım). birim zaman başına işlem sayısı izin verilen eşiğin altına düştüğünde yeni öğrenmenin gerçekleştiği, bu nedenle, aynı "öğrenme" bölümleriyle ileriye dönük olarak farklı uzunluklarda test bölümleri elde edildi. Sadece ortalama olarak verimlilikte aynı% 30'luk bir düşüş ortaya çıktı.

 
birleştirici :
Niye ya?

Neuronka, diğer herhangi bir model gibi, mevcut verilerde bazı kalıpları bulacaktır. Bu kalıpların bazı dahili forex süreçlerine karşılık gelip gelmediği veya nöron tarafından "sadece sonuç eşleşirse bir şeyi bir şeyle çarpın" ilkesine göre mi seçildiği - kimse bilmiyor, hiçbir garanti yok. Forex'teki dahili süreçleri tam olarak belirleyebilmesi için yapısı (katmanları, bağlantıları) bir şekilde Forex'e karşılık gelmeli, bunun için özel olarak yapılandırılmalıdır, ancak o zaman sürekli olarak iyi sonuçlar vermeye başlayacaktır.

Şimdi, örneğin, resimleri sınıflandırmak için evrişimli sinir ağları çok popüler. Uygulamaları kulağa çok basit geliyor (Python kütüphanesini indirin ve işiniz bitti), ancak insanlar bir grup üniversitenin onlarca yıldır her kazanan yüzde için rekabet ettikleri "resmi tanıma" yarışmasına katıldığını unutuyor. "Van Gogh gibi bir resim çiz" veya bir resimdeki bir yüzü değiştirmek gibi modaya uygun şeyler, üniversitelerin, uyum sağlamak için çok zaman harcayan tüm öğrencileri ve lisansüstü öğrencileri (ve sanırım profesörler) ile onlarca yıllık çalışmalarının sonucudur. model parametreleri veya yeni modeller geliştirme.
Forex için bu da mümkündür, ancak daha az çaba harcamanıza gerek yoktur. Bu durumda, kazançlar Forex'te gerçek kazançlardır, bu nedenle modellerin konfigürasyonları hakkında övünmezler ve bunları halka yaymazlar, rekabete her yeni katılımcının yeniden başlaması gerekir.

 
Dr.Tüccar :

Varsayılan parametrelerle sadece iki nöron alıp hemen kârlı ticarete başlayabileceğinize inanmıyorum.

Tabii ben de inanmıyorum. Çünkü bu, hayatında sadece bir kez eğitilmesi gereken bir düşünen makine yaratmak anlamına gelir. İnsanlık hala düşünen makinelerden çok uzak.
 
Andrey Dik :

Alım satım için ayrı eğitim bu sorunları kısmen çözer. Birkaç sayfa önce yazdım, nasıl, iki ızgaram var, biri sinyalleri almayı (1; 0) - satın almayı veya hiçbir şey yapmamayı ve diğeri satmayı (-1; 0) - satmayı veya hiçbir şey yapmamayı öğreniyor.

Üçlü sınıflandırıcımda ayrıca iki ızgara vardır, ancak farklı gizli katmanlara sahiptir ve her ikisi de bir sonraki fiyat yönünün tahminini sınıflandırır, yani. 1 veya -1. Çıkışta, şebekelerden biri 1 ve diğeri -1 çıkarsa (birbiriyle çelişiyorsa), anahtar 0 verir - hiçbir şey yapmaz.

Bağımlı değişkenin değeri için alıp satarken her şey açıktır, çünkü bunlar, modelden sonra gelen fiyat hareketinin yönü ile belirlenebilir. Ancak burada, doldurma için zor bir soru ortaya çıkıyor, ikili sınıflandırıcılarınız bağımlı değişkeni hangi koşulla 0'da işaretliyor - hiçbir şey yapmayın?

Sonuçta, doğada gerçekler şeklinde böyle bir durum yok, IMHO.

 
Andrey Dik :

5. ...

6. ...

Bu açıklamalarla kulağa mantıklı geliyor. Ve ne kadar nadir kalıp ticareti yapıyorsunuz? Diyelim ki, " satın alma pozisyonu aç " ve "tüm anlaşmaları kapat" sınıfları ile eğitim örnekleri varsa, o zaman bu sınıfların yüzdesi ne olacak? Buy sınıfının yüzlerce puanlık keskin fiyat artışlarına tekabül ettiğini varsayabilirim, yani satın alma sınıfının miktarı tüm eğitim örneklerinin yaklaşık %10'udur?
 
Andrey Dik :

1. Evet. Bu, modelin kötü olduğu anlamına gelmez. Bu, sağlanan veri miktarı için modelin "yetersiz belleği" anlamına gelebilir,

2. çünkü sistemin bildikleriyle aynı veya çok benzer kalıplar vardı ve aynı zamanda tam olarak karşılık gelen kalıplardan önce meydana gelen piyasa tepkileri gerçekleşti. Sorun şu ki, kalıplar sürekli olarak yavaş yavaş ve bazen aniden değişiyor ve gelecek için hiçbir garanti yok.

1) Daha önce öğrenebilen öyle bir ağ var ki, daha önce bilmediği verileri alırsa, okumanız ilginç olabilir, ağın adı SOINN https://www.google.com.ua/webhp ?sourceid=chrome-anında&ion= 1&espv=2&ie=UTF-8#q=soinn

2) Bunun hakkında yazmaktan zaten bıktım, üstelik pratik olarak pazarın kendi istatistiklerine aykırı olduğunu kanıtladım, hatta mekaniğin kendisini açıkladım - bunun neden olduğunu ve klasik formdaki tüm eğitimlerin buna uygulanamayacağını, ama kimseyi ilgilendirmez, herkes yaptığını da yapar

Google
Google
  • www.google.com.ua
Голосовой поиск – это очень удобно! Чтобы найти нужную информацию, скажите "О'кей, Google" и произнесите запрос.
 
Yuri Reshetov :

Üçlü sınıflandırıcım da iki ızgaraya sahiptir, ancak farklı gizli katmanlara sahiptir ve her ikisi de bir sonraki fiyat yönünün gerçeğini sınıflandırır, yani. 1 veya -1. Çıkışta, şebekelerden biri 1 ve diğerinden -1 çıkışı verirse, anahtarın 0 çıkışı veren - hiçbir şey yapmayan bir anahtar vardır.

Alış ve satış ile her şey açıktır, çünkü. bunlar, modelden sonra gelen fiyat hareketinin yönü ile belirlenebilir. Ancak burada, doldurma için zor bir soru ortaya çıkıyor, ikili sınıflandırıcılarınız bağımlı değişkeni hangi koşulla 0'da işaretliyor - hiçbir şey yapmayın?

Sonuçta, doğada gerçekler şeklinde böyle bir durum yok, IMHO.

SATIŞ AL Çevirisi

-1 0 satmak

0 0 çit

0 1 satın al

-1 1 çit

İşte geçiş tablosu. Şebekelerin sinyalleri varken sinyallerin ortaya çıktığını ve birbiriyle çelişmediğini gösterir. Eğitimden sonra, kalıplar tanınır ve başarılı ticaret gerçekleşir, zamanla, okumalar birbiriyle çelişmeye başlar (çıkış 0 - çit) veya her iki ızgara da kalıpları tanımayı bırakır (çıkış 0 - çit). Bu nedenle, zamanla, işlem sayısında bir azalma var , yani "emin değilim - ticaret yapmayın" ilkesi.

Ama görünüşe göre sorunuz farklı: çitin üzerine oturmak yerine ilgili ızgarayı nasıl alıp/satacaksınız? - cevap basit, puan sistemi. Doğru cevaplar için ve yanlış ve çit para cezaları için puan verilir. Puan oranını seçmek gerekir, bu aynı zamanda bir görevdir, çünkü sonunda iki ızgaranın koordineli çalışmasını sağlamanız gerekir, ancak sonuç acı çekmeye değer.

IMHO, alış ve satış modelleri farklıdır. Fikir bu, tıpkı seninki gibi.

Neden: