Çoklu para birimi danışmanı hakkında soru - sayfa 10

 
rid >> :
Ancak, tüm keneler için uygulanacak takip eden durdurma işlevine ihtiyacım var.

Tik trolünün somut faydaları, uyum nedeniyle yalnızca kısa bir alanda görülebilir.

Kural olarak, engebeli bir iz daha kötü değildir (TS tırtıl pul pul dökülmüyorsa).

Ancak, çok önemli olan bir onay izi kullanırken "açık fiyatlarla" optimizasyonun avantajları ortadan kalkar.

Son zamanlarda, neredeyse tüm araçlarda trolleri terk etti.

Bir pozisyonun kısmen/tamamen kapanması (belki tersine çevirerek) bir geri sinyalde daha iyi çalışır.

 

Ve bir eşik trolü kullanıyorum. Ve işe başlamak için eşiği ayarlarsanız, bunun bir nedeni vardır ...

 extern string    ____________ = "Параметры Трейлинг стопа" ;
extern bool UseTrailing = false ;
extern int lMinProfit = 150 ;
extern int sMinProfit = 160 ;
extern int lTrailingStop = 50 ;
extern int sTrailingStop = 60 ;
extern int lTrailingStep = 5 ;
extern int sTrailingStep = 5 ;
//--------------------------------------------------------
int start ( )
   {
   if ( Time [ 0 ] = = prevtime )    return ( 0 ) ;
   prevtime = Time [ 0 ] ; //если появился новый бар , включаемся
//-------------------------------------------------------------------   
if ( UseTrailing ) TrailPositions ( ) ; //трейлинг стоп

//--------------------------------------------------------------
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 
//жжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжж
void TrailPositions ( ) //пороговый трейлинг стоп
{    int Orders = OrdersTotal ( ) ;
   for ( int i = 0 ; i < Orders ; i + + ) {
     if ( ! ( OrderSelect ( i , SELECT_BY_POS , MODE_TRADES ) ) ) continue ;
     if ( OrderSymbol ( ) ! = Symbol ( ) & & OrderMagicNumber ( ) = = Magic ) continue ; 
     if ( OrderType ( ) = = OP_BUY ) {
       if ( Bid - OrderOpenPrice ( ) > lMinProfit * Point ) {
         if ( OrderStopLoss ( ) < Bid - ( lTrailingStop + lTrailingStep - 1 ) * Point ) {
           OrderModify ( OrderTicket ( ) , OrderOpenPrice ( ) , Bid - lTrailingStop * Point ,
                                                     OrderTakeProfit ( ) , 0 , Blue ) ;
         } } }
     if ( OrderType ( ) = = OP_SELL ) {
       if ( OrderOpenPrice ( ) - Ask > sMinProfit * Point ) {
         if ( OrderStopLoss ( ) > Ask + ( sTrailingStop + sTrailingStep - 1 ) * Point | | 
                                                       OrderStopLoss ( ) = = 0 ) {
           OrderModify ( OrderTicket ( ) , OrderOpenPrice ( ) , Ask + sTrailingStop * Point ,
                                                     OrderTakeProfit ( ) , 0 , Blue ) ;
         } } } } }
//жжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжж
 

Hiç anlamıyorum, tik adım eşik trol kullanmanın amacı nedir?

 

Hepinize iyi günler. Yine sorun.

Göstergeli.

iCustom yazamıyor

Şöyle yazdı:

 double ActivatorBLUE = iCustom ( NULL , 0 , "HL Next Activator" , ActivatorPeriod , useFullPeriods , 0 , 1 ) ;
//синие уровни на 1 баре
double ActivatorRED = iCustom ( NULL , 0 , "HL Next Activator" , ActivatorPeriod , useFullPeriods , 1 , 1 ) ;
//красные уровни на 1 баре
Comment ( ActivatorBLUE , "-" , ActivatorRED ) ;

Ancak her iki durumda da yalnızca mavi seviye değerleri döndürülür. Neden anlamıyorum! Sonuçta, sırasıyla 1 ve 0 arabellek numaralarını verdim!

Yorumda bile aynı değerler gösteriliyor - mavi seviye

Tamponlar, göstergenin başlangıcında şu şekilde ayarlanır:

 //+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init ( )
   {
//---- indicators
   SetIndexStyle ( 0 , DRAW_ARROW ) ;
   SetIndexArrow ( 0 , 159 ) ;
   SetIndexBuffer ( 0 , SellActivator ) ; //синий
   SetIndexEmptyValue ( 0 , 0.0 ) ;
   SetIndexStyle ( 1 , DRAW_ARROW ) ;
   SetIndexArrow ( 1 , 159 ) ;
   SetIndexBuffer ( 1 , BuyActivator ) ; //красный
   SetIndexEmptyValue ( 1 , 0.0 ) ;
   if ( useFullPeriods ! = 0 ) useFullPeriods = 1 ;
//----
   return ( 0 ) ;
   }

Lütfen. söylemek? İndirme göstergesi (Türkiye Yazarı - Rosh).

Dosyalar:
 
rid писал(а) >>

Hepinize iyi günler. Yine sorun.

Göstergeli.

iCustom yazamıyor

Kontrol ettim, şunu anladım:

2008.10.29 15:13:49 2008.10.28 12:51 testhl EURUSD,H1: 1.2395-0
2008.10.29 15:13:49 2008.10.28 12:51 testhl EURUSD,H1: 1.2395-0
2008.10.29 15:13:49 2008.10.28 12:51 testhl EURUSD,H1: 1.2395-0
2008.10.29 15:13:48 2008.10.28 05:52 testhl EURUSD,H1: 0-1.2547
....
2008.10.29 15:13:48 2008.10.28 05:51 testhl EURUSD,H1: 0-1.2547
2008.10.29 15:13:48 2008.10.28 05:51 testhl EURUSD,H1: 0-1.2547
2008.10.29 15:13:47 2008.10.27 18:49 testhl EURUSD,H1: 1.2414-1.2542
.....
2008.10.29 15:13:47 2008.10.27 18:49 testhl EURUSD,H1: 1.2414-1.2542
2008.10.29 15:13:46 2008.10.27 14:54 testhl EURUSD,H1: 0-1.2612

Derinden araştırmadım, ancak doğru görünüyor, gösterge varsayılan parametrelerle alındı, değerleri bir dize ile çağırdı

 Print ( iCustom ( NULL , 0 , "HLdNextmActivator" , 0 , 1 ) , "-" , iCustom ( NULL , 0 , "HLdNextmActivator" , 1 , 1 ) ) ;
 

Sayesinde.

Garip. Burada ve bana aniden kazandı. Hiçbir şeyi düzeltmedi, hiçbir şey yapmadı.

Ama sabah çalışmadı! İki saat acı çektim. "Diş veriyorum..."

Bunu ilk kez fark etmiyorum. Basit bir hindi üzerinde basit bir şey yapacağım. Ve aniden çalışmıyor!

Görünür bir sebep olmadan! Tasarım basit olmasına rağmen. Tamam, düşünüyorum. Sonra tekrar deneyeceğim...

VE BİR GÜN NASIL YALAN EDECEK - BAŞKA, Ve açıyorum, bakıyorum - olması gerektiği gibi çalıştı!

Mucizeler, bazıları...

Bir kez parabolik ile oldu. Parabolik "işaretini" değiştirirken bir pozisyon açma koşullarını ayarlayın.

Eh, en ilkel durum. Bu yüzden test cihazında çalışmadım! İki gün boyunca müstehcen bir şekilde küfrederek sorunun ne olduğunu bulmaya çalıştım. Yani anlamadım. Tükürdüm, - tamam, sanırım, o zaman ... Ve bir gün sonra açtım ve ... - Bakıyorum, saat gibi çalıştı ...

 
rid >> :

..............sonra... Ve bir gün sonra açtım ve ... - Bakıyorum, saat gibi çalıştı...

Chukchi saatçiye gelir.

Bu saat benim için bozuk.

Tamirci çalar saati alır ve açar, oradan ölü bir hamamböceği düşer.

- Ancak çalışmayacak (

- Niye ya ?

- Tamirci öldü gerçi

 

Hepinize iyi günler. Sorunu bir türlü çözemiyorum.

EA bekleyen siparişler verir , örneğin OP_BUYSTOP - dört sipariş

OP_BUYSTOP büyü 1

OP_BUYSTOP büyü 2

OP_BUYSTOP büyü 3

OP_BUYSTOP büyü 4

Bunları ayarlar - fiyattan belirli bir mesafede ve birbirinden belirli bir adımda.

Daha ileri. Fiyat düşerse, belirli bir adımla fiyattan sonra hareket etmesi için emirlere ihtiyacım var.

Yaptığım şey bu. Burada özel bir zorluk yoktu.

 

Yine de!

Tüm emirlerin fiyatla değiştirilip taşınmasına hiç ihtiyacım yok, sunucuya gereksiz isteklerle brokerin dikkatini çekiyor.

Diğerlerinin üzerinden atlamak ve en yakın olmak için mevcut fiyattan en uzaktaki siparişe ihtiyacım var!

Ve böylece, fiyat daha da düştüğünde, en uzaktaki siparişler sürekli olarak fiyata yaklaşır!

Birkaç saattir düşünüyorum ve bir çözüme yaklaşamıyorum bile.

Kim atlayabilir.

Veya benzer bir şeye bir bağlantı var mı?

I.Kim'in şubesinde fonksiyonlar bulundu. Ancak bunların burada nasıl uygulanacağı henüz belli değil.

//------------------------------------------------ -------------------------------------------------- --------------------------

GetIndexByTicket() işlevi. Bu fonksiyon, bilet üzerindeki siparişin veya pozisyonun indeksini döndürür.

IndexByTicket() işlevi. Bilete göre emrin veya pozisyonun indeksini (verilen emirlerin veya açık pozisyonların genel listesindeki seri numarası) döndürür

GetOrderOpenPrice() işlevi. Son verilen siparişin fiyatını verir

 

İki dizi oluşturuyoruz. Biri bilet numarasına göre, ikincisi fiyata göre. Daha sonra bilet numaralarını hareket ettirirken (bağlantıyı kesmeden) diziyi fiyata göre sıralıyoruz. Ardından dizinin bir ucundan en küçük fiyat, diğerinden en yüksek fiyat olacaktır. Aşırı emirlerinden birini değiştirmeye devam ediyor.