[ARŞİV] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 3. - sayfa 334

 
khorosh :
POINTve TICKSIZE arasındaki fark nedir? MarketInfo() aracılığıyla istendiğinde aynıdırlar, ancak farklı çağrıldıklarında nasıl farklılık göstermeleri gerekir?
POINT ve TICKSIZE site arasındaki fark nedir:mql4.com
 
khorosh :
POINTve TICKSIZE arasındaki fark nedir? MarketInfo() aracılığıyla istendiğinde aynıdırlar, ancak farklı çağrıldıklarında nasıl farklılık göstermeleri gerekir?

Bireysel enstrümanlar için farklılık gösterirler.
 
Vinin :

Bireysel enstrümanlar için farklılık gösterirler.
Teşekkür ederim. Nokta bir kuruş gibidir, bir ölçü birimidir. Tixize, minimum fiyat değişikliğidir . Görünüşe göre, kene boyutu bir noktadan daha az olamaz, ancak daha fazla olabilir. Muhtemelen, bu DC'yi belirler.
 
Söyleyin lütfen, bir EXCEL çalışma kitabında (açık) MQL'den bir makro çalıştırmak mümkün müdür?
 
rustein :
Kaldıraç vb. dikkate alınarak izin verilen maksimum lot büyüklüğü nasıl hesaplanır?
teşekkürler
 double MeansOneLot       = MarketInfo (Symb,MODE_MARGINREQUIRED);       //Необходимо средств для открытия 1 лота
double MeansFree         = AccountFreeMargin ();                       //Значение свободных средств, разрешенных для открытия позиций
double MeansGuaranty     = AccountMargin ();                           //Значение залоговых средств, используемых для поддержания открытых позиций
double LotPriceTic       = MarketInfo (Symb, MODE_TICKVALUE);           //Стоимость 1 лота в валюте депо на 1 тик
double MaxLotPermissible = MathFloor ((MeansFree/MeansOneLot)* 100 )/ 100 ; //Максимально допустимый лот для открытия позиции
 
joo :

Harika teşekkür ederim
 

METİN DOSYA EKLENMESİ YARDIM

 
Arkadaşlar sorunu çözmeme yardım edin... TicketArray dizisine yazılı bilet numaralarım (3 tane var) var. Ve şimdi arka arkaya 3 kez geyik aldığımda, danışmanın ticareti durdurmasını istiyorum ... bir başlangıç için 3 geyiğin durumunu yazamam ... Bir zamanlar bir tür yılan bana bayraklar hakkında bilgi verdi. uzun zaman önce, şimdi onları yaygın olarak kullanıyorum, ama hala hiçbir şey çıkmıyor. Kayıptaki ilk siparişi kapattıktan sonra EA doğru döner ve sonra iyi çalışır... neden?

bool flag = true; //по умолчанию флаг стоит на правду
for ( int j= 1 ;j< 4 ;j++) //цикл из 3х значений (1,2,3)
{
OrderSelect (TicketArray[j],SELECT_BY_TICKET); //выбираю ордер

if ( OrderClosePrice ()!= OrderStopLoss () && TicketArray[j]== 0 )flag = false; //думаю, тут проблема. Условие: если ордер не получил лося 3 раза и если у тикета еще нет номера, то такая ситуация меня не устраивает.
Print ( OrderClosePrice (), ",,,,," , OrderStopLoss (), ",,,,," ,TicketArray[j]); //эта строчка для тестера, чтоб наглядно было видно цену закрытия, цену стопа и номер тикета. Хоть тикет и =0, но все равно пишет true.
}
Alert (flag);

Her ihtimale karşı danışmanın tamamını gönderiyorum. Bu, eğitim amaçlı kendim yazdığım normal bir martingal.

//+------------------------------------------------------------------+
//| StMartin.mq4 |
//| Sergey Kodolov |
//| 84232676421@mail.ru |
//+------------------------------------------------------------------+
#property copyright "Sergey Kodolov"
#property link "84232676421@mail.ru"

extern int TP = 1000 ; 
extern int TS = 1000 ; 
extern int TF = 1 ; 
extern double lots = 0.1 ; 


double volumz;
int ticket,total;
int slip = 3 ; 
int Magic = 4 ; 

int TicketArray[ 4 ];

void FormTicket( int number) //объявил шаблон под функцию запоминания тикетов
{
for ( int i= 3 ;i> 0 ;i--)
{
TicketArray[ 0 ] = ticket;
if (TicketArray[ 0 ]> 0 && TicketArray[ 0 ] == TicketArray[ 1 ]) break ;
TicketArray[i] = TicketArray[i- 1 ];
} 
}

//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
//----
ticket = OrderSend ( Symbol (),OP_BUY,lots,Ask,slip,Bid-TS* Point ,Bid+TP* Point , "First order" ,Magic, 0 , Yellow ); //открываем первый ордер
//----
return ( 0 );
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----

//----
return ( 0 );
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
//----
int OrderTimeCheck = check3(); //проверяем, закрыт ли ордер
bool OrderCloseCheck = check2(OrderTimeCheck); //проверяем, закрылись ли ордера в минус
FormTicket(ticket); //вызываем функцию, чтоб запоминала тикеты
ProfitCheck(OrderCloseCheck); //тут рисуем линии

total = OrdersTotal ();
if (total < 1 )
{
OrderSelect (TicketArray[ 1 ],SELECT_BY_TICKET);
volumz = OrderLots ();
if ( OrderProfit ()<= 0 )
{
if ( OrderType () == OP_BUY)
{ 
double lot1 = volumz* 2 ;
ticket = OrderSend ( Symbol (),OP_SELL,lot1,Bid,slip,Ask+TS* Point ,Ask-TP* Point , 0 ,Magic, 0 , Green );
}
if ( OrderType () == OP_SELL)
{ 
double lot2 = volumz* 2 ;
ticket = OrderSend ( Symbol (),OP_BUY,lot2,Ask,slip,Bid-TS* Point ,Bid+TP* Point , 0 ,Magic, 0 , Red );
}
}
if ( OrderProfit ()> 0 )
{
if ( OrderType () == OP_BUY)
{
ticket = OrderSend ( Symbol (),OP_BUY,lots,Ask,slip,Bid-TS* Point ,Bid+TP* Point , 0 ,Magic, 0 , Green );
}
if ( OrderType () == OP_SELL)
{
ticket = OrderSend ( Symbol (),OP_SELL,lots,Bid,slip,Ask+TS* Point ,Ask-TP* Point , 0 ,Magic, 0 , Red );
}
} 

} 
//----
return ( 0 );
}
//+------------------------------------------------------------------+


int check3() //проверяем, закрыт ли ордер
{
OrderSelect (TicketArray[ 1 ],SELECT_BY_TICKET);
if ( OrderCloseTime ()> 0 ) return ( 100 );
}

bool check2( int OrderTimeCheck) //проверяем, если ордер закрыт, то последние 3 закрытых ордера были ли убыточными?
{
if (OrderTimeCheck == 100 )
{
bool flag = true;
for ( int j= 1 ;j< 4 ;j++)
{
OrderSelect (TicketArray[j],SELECT_BY_TICKET);

if ( OrderClosePrice ()!= OrderStopLoss () && TicketArray[j]== 0 )flag = false; //ТУТ ДОДУМАТЬ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Print ( OrderClosePrice (), ",,,,," , OrderStopLoss (), ",,,,," ,TicketArray[j]);
}
Alert (flag);
if (flag == true)
{
ObjectCreate ( "NewLabel" , OBJ_LABEL , 0 , 0 , 0 );
ObjectSetText ( "NewLabel" , "Ура" , 14 , "Arial" , Aqua );
ObjectSet ( "NewLabel" , OBJPROP_CORNER , 1 );
ObjectSet ( "NewLabel" , OBJPROP_XDISTANCE , 40 );
ObjectSet ( "NewLabel" , OBJPROP_YDISTANCE , 40 );
}
} 
}

void ProfitCheck( bool OrderCloseCheck)
{
if (OrderCloseCheck == true) 
{
Print ( "x" );
} 
} 
 

PerkyAsctrend1 göstergesinin arabelleklerinden biri okunamıyor.
Lütfen anlamak için yardım edin. Diğer göstergelerle birçok kez yaptım, her zaman sorunsuz. Burada çalışmıyor.
İki arabellek okudum: bunlardan biri:
double PerkyBuf2=iCustom (NULL,0," PerkyAsctrend1 ",5,250,0,1); - doğru okundu, sinyal yakalandı, sonraki satırla yakalamaya çalışıyorum:
double PerkyBuf1=iCustom (NULL,0," PerkyAsctrend1 ",5,250,1,1); ve bu tamponun tüm sinyalleri Uzman Danışmanım tarafından geçmektedir. Hatta bu iki nokta ile boş bir Expert Advisor oluşturmaya çalıştım.Yorum () sonuçları ekranda gösterdi. Satış sinyali yakalanmadı.
Anlamama yardım et.
göstergesini ekliyorum
Dosyalar:
 
Qoren :

PerkyAsctrend1 göstergesinin arabelleklerinden biri okunamıyor.
Lütfen anlamak için yardım edin. Diğer göstergelerle birçok kez yaptım, her zaman sorunsuz. Burada çalışmıyor.
İki arabellek okudum: bunlardan biri:
double PerkyBuf2=iCustom (NULL,0," PerkyAsctrend1 ",5,250,0,1); - doğru okundu, sinyal yakalandı, sonraki satırla yakalamaya çalışıyorum:
double PerkyBuf1=iCustom (NULL,0," PerkyAsctrend1 ",5,250,1,1); ve bu tamponun tüm sinyalleri Uzman Danışmanım tarafından geçmektedir. Hatta bu iki nokta ile boş bir Expert Advisor oluşturmaya çalıştım.Yorum() sonuçları ekranda gösterdi. Satış sinyali yakalanmadı.
Anlamama yardım et.
göstergesini ekliyorum

Tampon 0'da sinyal al, Tampon 1'de sinyal sat

Kontrol edilecek komut dosyası:

 //+------------------------------------------------------------------+
//|                                                         Test.mq4 |
//|                             Copyright © 2011, Trishkin Artyom A. |
//|                                           support@goldsuccess.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2011, Trishkin Artyom A."
#property link       "support@goldsuccess.ru"
//                   Skype: artmedia70

//+------------------------------------------------------------------+
//| script program start function                                    |
//+------------------------------------------------------------------+
int start()
  {
//----
   int count= WindowBarsPerChart ();
   for ( int i= 0 ; i<count; i++) {
       double buf0= iCustom ( Symbol (), Period (), "PerkyAsctrend1_1" , 4 , 250 , 0 ,i);
       double buf1= iCustom ( Symbol (), Period (), "PerkyAsctrend1_1" , 4 , 250 , 1 ,i);
       if (buf0!= EMPTY_VALUE ) Alert ( "В буфере 0 на баре " , iBarShift ( Symbol (), Period (),Time[i]), " сигнал на Buy = " , DoubleToStr (buf0, Digits ));
       if (buf1!= EMPTY_VALUE ) Alert ( "В буфере 1 на баре " , iBarShift ( Symbol (), Period (),Time[i]), " сигнал на Sell = " , DoubleToStr (buf1, Digits ));
      }
//----
   return ( 0 );
  }
//+------------------------------------------------------------------+