Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
Ancak her düşüşte tek bir işlem açmak için PositionsTotal(0) eklemem mi gerekiyor?
Hesap ve risk kontrolü için elimde daha önceden kodlar vardı kaybettim şuan da aklıma da gelmiyor açıkçası. Expert sadece Nasdaq'da işlem yapacak onun için 50 puan diyordum.
PositionsTotal()
o anda açılmış pozisyonların sayısını verir 0 ise hiç işlem açılmadığı yani yeni bir buy veya sel işlemi açabilirsin. işlem gerçekleştiğinde bu sayı artar ve
belirlediğin limit sonrasında yeni pozisyon açmayı durudurursun ben 3 le sınırlama yapmışım
ancak bu pozisyon sayısı dır emir sayısı değil emir sayısını
OrdersTotal()
ile takip ediyorsun bunuda BuyLimit icra ederken kontrol edebilirsin fazla emir girmeyi önleyebilirsin.
her koşul gerçekleştiğinde icra ettiğin fonksiyon piyasa emri ise işlem gerçekleşir ise pozisyon artar limit emri ise emir sayısı artar limit daha sonra pozisyona dönüşebilir de dönüşmeyebilirde
senin yapmak istediğin şey sanırım tek seferde emirleri bir defada yazayım
ozaman bunun için Ontick() e gerek yok, OnInit() de yapılır. Ontick() de Limit emir vermek karmaşık bir olay saniyede 1000 kere tick atabilyor piyasa ve limit emirlerde gerek yok buna emiri birkere vereceksin sürekli duracak ama bekleyen emiri iptal etmek istersen ontickte kontrol edebilirsin
bunlar adım adım ilerlemen gereken konular
bu kodlar bir seferde gün açılış fiyatının 50 puanlık düşüşlerde almasını istediğin emirleri tek seferde yollar tekrar tekrar çalıştırman durumunu önlemek için verilmiş emir sayısı sıfır da başlamalı bu kodların ontickte çalışması gerekmiyor Ontick bölümünü iz süren stop ve piyasa koşullarını analiz etmek için kullanıyoruz benelde anlık emir için limit emir için de kullanılabilir ama limit emir sonsuz kere vermeyi önlemen koşulu çok daraltman ve verilen emir sayısını takip etmen gerekir
bu kodlar bir seferde gün açılış fiyatının 50 puanlık düşüşlerde almasını istediğin emirleri tek seferde yollar tekrar tekrar çalıştırman durumunu önlemek için verilmiş emir sayısı sıfır da başlamalı bu kodların ontickte çalışması gerekmiyor Ontick bölümünü iz süren stop ve piyasa koşullarını analiz etmek için kullanıyoruz benelde anlık emir için limit emir için de kullanılabilir ama limit emir sonsuz kere vermeyi önlemen koşulu çok daraltman ve verilen emir sayısını takip etmen gerekir
Hocam öncelikle teşekkür ederim. Demek istediğinizi anladım ancak kodları çalıştıramadım. Üzerinde düzenleme yaptım yine olmadı. Günlük açılış fiyatından -50 şeklinde limit emir verirsen olur demek istediniz, çok mantıklı ancak olmadı işlem açılmıyor test modunda deneme yaparken. Yeni bir strateji denedim aslında daha güzel ancak yine çözemediğim bir sorunla karşılaştım. Yardımcı olabilirseniz gerçekten çok memnun olurum. Sorunu anlatayım;
Bir emir ile BUY işlemine ek birkaç bekleyen emirde BuyLimit ekledim. BUY işlemi TP olmaz aşağı yönlü giderse bekleyen emirler çalışıyor. TP veya SL olursa bekleyen emirler silinsin yerine yeni seviyeden bekleyen emirler eklensin istiyorum. Ancak ilk BUY işleminde veya sonrasında açılan BUY işlemine ek bekleyen BuyLimit emirlerinin iptal olmasını sağlayamadım hiçbir şekilde, sürekli onlara ek yeni seviyeden yüzlerce emir oluyor, BUY işlemi sonlandığında ona bağlı açılan bekleyen emirleri nasıl iptal edebilirim diye sormak istiyorum? Yardımcı olursanız çok sevinirim.
ben forum üstünden yazdım kodları metaeditörde yazayım çalışma hataları olabilir denemedim bakacağım
----
çalışıyor denedim
2022.12.11 00:41:44.284 nasdaq (NAS100,H1) CTrade::OrderSend: buy limit 0.10 NAS100 at 11130.7 [market closed]
2022.12.11 00:41:44.441 nasdaq (NAS100,H1) CTrade::OrderSend: buy limit 0.10 NAS100 at 10630.7 [market closed]
2022.12.11 00:41:44.672 nasdaq (NAS100,H1) CTrade::OrderSend: buy limit 0.10 NAS100 at 10130.7 [market closed]
2022.12.11 00:41:44.832 nasdaq (NAS100,H1) CTrade::OrderSend: buy limit 0.10 NAS100 at 9630.7 [market closed]
ben genelde point çalışıyorum pip çalışırken fiyatlarda buna dikkat etmen lazım nasdaqla daha önce çalışmadım 50 düşmekten kastin pip mi point mi bilemiyorum bazıları % çalışyor
Bir emir ile BUY işlemine ek birkaç bekleyen emirde BuyLimit ekledim. BUY işlemi TP olmaz aşağı yönlü giderse bekleyen emirler çalışıyor. TP veya SL olursa bekleyen emirler silinsin yerine yeni seviyeden bekleyen emirler eklensin istiyorum. Ancak ilk BUY işleminde veya sonrasında açılan BUY işlemine ek bekleyen BuyLimit emirlerinin iptal olmasını sağlayamadım hiçbir şekilde, sürekli onlara ek yeni seviyeden yüzlerce emir oluyor, BUY işlemi sonlandığında ona bağlı açılan bekleyen emirleri nasıl iptal edebilirim diye sormak istiyorum? Yardımcı olursanız çok sevinirim.
senin kodlara bakalım bu kodlar Oninit de çalışıyor olmalı
bu kod zaten sıfırdan küçük olamaz
açık işlemi kapatmak için islem.PositionClose kullanmalısın bekleyen emirlerden vazgeçiyorsan veya bu limt emir gelmez fiyatı değiştireyim dersen OrderModify vazgeçtim bu limit emirden dersen OrderDelete
bunlar için açılmış limit emirlerin biletlerini saklamış ve biliyor olman lazım o biletleri kapatman gerekir
budurumda CPositionInfo ve COrderInfo sınıflarını da kullanmalısın o anda açılmış pozisyon lar stop olmuş tp olmuş her seferinde pozların
izlemen biletleri örenmen gerekiyor piyasa koşullarına göre hep değişiyor limitli emir pozisyona dönmüş olabilir bu yüzden bu konutlar Ontick() de icar edilir.
birde hesabın hedgin hesap ise açtığnı kapatman gerekebiliyor bu sınıflarıda öğren
burada çok önemli bir konu daha var sen limit emirde stop ve tp leride girmişsin
düştükçe al çıktıkça sat mantığı galiba bu sistemler de marjin kontolünü çok iyi yapmalısın
bence bu işler çok karışık zararla sonuçlanacak işler tek bir emiri yönet on tickle an an karar ver
sistem zararını geri kurtaramaz yani burada 4 emire kadar düşüpte sonra tekrar yükselip 1. emire kadar yükselip hepsi tp olur fikri hayal gibi birşey
düştükçe önceki emirlerde stop oluyor o esnada hesaptaki parada azalıyor açılan pozisyon stop oluyor ve hiç pzosiyon açılmadan yukarı çıkıyor
e neolur şimdi para kazanmamış zarar etmiş olursun dönüşte açılmış pozisyonu yakalayamıyorsun :) programcılığı biraz daha ilerlet burada önemli olan strateji
ha hesapta çok para var düştükçe alsın çıkınca tp olsun dersen ozaman stop kontrolü karışır ilk açtığın stopun en allta kalması lazım birşeye iyi karar vermen lazım dibi mi yakalıyor bu emirler
ortalamayımı aşağı çekiyor ben bu her iki fikirdede kazanan görmedim hayatımda. gariptir ilk başlayanlar bu stratejiyi benimsiyor, eninde sonunda batış bu strateji herçekten kazanan
bir sistem yıllar sürüyor buna hazırlıklı ol