MQL4 ve MQL5 ile ilgili herhangi bir acemi sorusu, algoritmalar ve kodlar hakkında yardım ve tartışma - sayfa 1216 1...120912101211121212131214121512161217121812191220122112221223...1953 Yeni yorum AIGUL SALMANOVA 2020.07.15 15:23 #12151 Valeriy Yastremskiy : Bayraklar veya emir türlerinin sayısının kontrolü veya bilet bir piyasa emrinin kapanış zamanının kontrolü ise, sıfıra eşit değilse, emir kapanmıştır ve emri açma bayrağı yanlıştır. Programatik olarak nasıl? Valeriy Yastremskiy 2020.07.15 15:33 #12152 AIGUL SALMANOVA : Programatik olarak nasıl? if ( OrderSelect (Ticket, SELECT_BY_TICKET)== true ) { if (OrderCloseTime()== 0 ) // Если наш рыночный ордер не закрыт { if (flagAlert == true ) Alert ( "Наш рыночный ордер жив, Модифицируем его если нужно " , Text,Ticket, ". Ждём ответ.." ); ModifyTral(); // Модифицируем если нужно } if (OrderCloseTime()!= 0 ) // Если наш рыночный ордер закрылся { OpnOr= false ; // Флаг открытия рыночного ордера после его закрытия делаем ЛОЖЬ Ticket= 0 ; // Тикет ордера рыночного, он может быть только один Alert ( "Наш рыночный ордер закрылся. Работа Советника продолжается " , "Прибыль/убыток = " ,OrderProfit(), " Своп = " , OrderSwap(), " Комиссия = " , OrderCommission()); return ; } } else { Alert ( "OrderSelect() нашего рыночного ордера вернул ошибку - " , GetLastError ()); return ;} } Bilet muhasebesi için. Bir sipariş açarken, bileti hatırlamanız gerekir. Alert ( "Попытка открыть Buy Ожидание ответа.." , "SL = " ,SL, "TP = " ,TP, "Lts = " ,Lts); Ticket= OrderSend (Symb,OP_BUY,Lts,Ask,slippage,SL,TP, "QstrBuy" ,Magic, 0 ,Blue); //Открытие Buy if (Ticket> 0 ) // Получилось :) { Alert ( Symbol (), "Открыт ордер Buy по цене " ,Ask, "Ticket = " ,Ticket);} prom18 2020.07.15 20:56 #12153 Valeriy Yastremskiy : Dürüst olmak gerekirse, neye ihtiyacınız olduğu net değil. Neyin görüntülendiğini ve neye ihtiyacınız olduğunu nasıl anladığınızı formüllere yazın. Son 4 tik arasında milisaniye cinsinden zamana ihtiyacınız var. Yeni bir onay işareti göründüğünde değerleri güncelleyin. Gösterge, son işaretin ( GetTickCount() ) zamanını arabelleğe yazar. EA, göstergeden değerler alır ve zaman farkını hesaplar. double buf1= iCustom ( Symbol (), 0 , "time" , 0 , 1 ); double buf2= iCustom ( Symbol (), 0 , "time" , 0 , 2 ); double buf3= iCustom ( Symbol (), 0 , "time" , 0 , 3 ); double buf4= iCustom ( Symbol (), 0 , "time" , 0 , 4 ); double delta1=buf1-buf2; double delta2=buf2-buf3; double delta3=buf3-buf4; Alert (delta1, " " ,delta2, " " ,delta3); Görünen o ki her şey düşünülmüş ama Alert resimdeki gibi değerleri tek tek veriyor. Anlamıyor musun neden. Forumu kirletmemek için herhangi uzman danışman - çeşitli [ARŞİV] Forumu kirletmemek için Maxim Kuznetsov 2020.07.15 21:07 #12154 prom18 : Son 4 tik arasında milisaniye cinsinden zamana ihtiyacınız var. Yeni bir onay işareti göründüğünde değerleri güncelleyin. Gösterge, son işaretin (GetTickCount()) zamanını arabelleğe yazar. EA, göstergeden değerler alır ve zaman farkını hesaplar. Görünen o ki her şey düşünülmüş ama Alert resimdeki gibi değerleri tek tek veriyor. Anlamıyor musun neden. çünkü belgeleri okumuyorsun GetTickCount ile ilgili yardımda bununla ilgili yazılmıştır - bu, sayacın tamsayı taşmasıdır prom18 2020.07.15 21:39 #12155 Maxim Kuznetsov : çünkü belgeleri okumuyorsun GetTickCount ile ilgili yardımda bununla ilgili yazılmıştır - bu, sayacın tamsayı taşmasıdır uint'ten mi bahsediyorsun? Neden uyarıda çıkıyor? Oraya yazmadım. Maxim Kuznetsov 2020.07.15 22:48 #12156 prom18 : uint'ten mi bahsediyorsun? Neden uyarıda çıkıyor? Oraya yazmadım. ilk Uyarıda hesaplanan farkı yanlış gösteriyorsunuz (taşmaları hesaba katmadan), kodda büyük bir tamsayı değerinin olduğu ikinci Uyarı, sağladığınız parçada değil :-) prom18 2020.07.16 06:23 #12157 Bu sadece nokta, kodda mevcut değil. Göstergenin tüm kodu. #property indicator_separate_window #property indicator_buffers 1 #property indicator_color1 Aqua double x[]; //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ int init() { IndicatorBuffers( 1 ); SetIndexStyle( 0 , DRAW_LINE ); SetIndexBuffer ( 0 ,x); SetIndexDrawBegin( 0 , 0 ); SetIndexLabel( 0 , "x" ); SetIndexShift( 0 , 0 ); return ( 0 ); } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ int start() { uint b= GetTickCount (); x[ 0 ]=b; Alert (b); for ( int j= ArraySize (x)- 1 ;j>= 1 ;j--){x[j]=x[j- 1 ];} return ( 0 ); } //+------------------------------------------------------------------+ Danışmanın tüm kodu. #property copyright "" #property link "" #property version "1.00" #property strict //+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ int OnInit () { //--- //--- return ( INIT_SUCCEEDED ); } //+------------------------------------------------------------------+ //| Expert deinitialization function | //+------------------------------------------------------------------+ void OnDeinit ( const int reason) { //--- } //+------------------------------------------------------------------+ //| Expert tick function | //+------------------------------------------------------------------+ void OnTick () { uint buf1= iCustom ( Symbol (), 0 , "time" , 0 , 1 ); uint buf2= iCustom ( Symbol (), 0 , "time" , 0 , 2 ); uint buf3= iCustom ( Symbol (), 0 , "time" , 0 , 3 ); uint buf4= iCustom ( Symbol (), 0 , "time" , 0 , 4 ); uint delta1=buf1-buf2; uint delta2=buf2-buf3; uint delta3=buf3-buf4; Alert (delta1, " " ,delta2, " " ,delta3); } //+------------------------------------------------------------------+ Документация по MQL5: Константы, перечисления и структуры / Именованные константы / Предопределенные макроподстановки www.mql5.com //| Expert initialization function | //| Expert deinitialization function | //| Expert tick function | //| test1 |... Maxim Kuznetsov 2020.07.16 06:34 #12158 prom18 : Bu sadece nokta, kodda mevcut değil. Göstergenin tüm kodu. Danışmanın tüm kodu. bakın daha neler bıraktınız. time.mq4'e bakın - belki uyarı gönderir Valeriy Yastremskiy 2020.07.16 09:01 #12159 prom18 : Bu sadece nokta, kodda mevcut değil. Göstergenin tüm kodu. Danışmanın tüm kodu. Uyarı yapısındaki göstergede. Uyarı (b) altında 5 satır; uint b= GetTickCount (); x[ 0 ]=b; Alert (b); Görünüşe göre bu, sistem başladığından beri geçen milisaniye sayısıdır ) Adilzhan Zhumakhan 2020.07.16 17:11 #12160 Hızlı işlem butonlarının durumu nasıl izlenir? Yani, grafikte ya da değiller. İstemi işlevi veya başka bir yöntem ne. 1...120912101211121212131214121512161217121812191220122112221223...1953 Yeni yorum
Bayraklar veya emir türlerinin sayısının kontrolü veya bilet bir piyasa emrinin kapanış zamanının kontrolü ise, sıfıra eşit değilse, emir kapanmıştır ve emri açma bayrağı yanlıştır.
Programatik olarak nasıl?
Bilet muhasebesi için.
Bir sipariş açarken, bileti hatırlamanız gerekir.
Dürüst olmak gerekirse, neye ihtiyacınız olduğu net değil. Neyin görüntülendiğini ve neye ihtiyacınız olduğunu nasıl anladığınızı formüllere yazın.
Son 4 tik arasında milisaniye cinsinden zamana ihtiyacınız var. Yeni bir onay işareti göründüğünde değerleri güncelleyin.
Gösterge, son işaretin ( GetTickCount() ) zamanını arabelleğe yazar.
EA, göstergeden değerler alır ve zaman farkını hesaplar.
Görünen o ki her şey düşünülmüş ama Alert resimdeki gibi değerleri tek tek veriyor.
Anlamıyor musun neden.
Son 4 tik arasında milisaniye cinsinden zamana ihtiyacınız var. Yeni bir onay işareti göründüğünde değerleri güncelleyin.
Gösterge, son işaretin (GetTickCount()) zamanını arabelleğe yazar.
EA, göstergeden değerler alır ve zaman farkını hesaplar.
Görünen o ki her şey düşünülmüş ama Alert resimdeki gibi değerleri tek tek veriyor.
Anlamıyor musun neden.
çünkü belgeleri okumuyorsun
GetTickCount ile ilgili yardımda bununla ilgili yazılmıştır - bu, sayacın tamsayı taşmasıdır
çünkü belgeleri okumuyorsun
GetTickCount ile ilgili yardımda bununla ilgili yazılmıştır - bu, sayacın tamsayı taşmasıdır
uint'ten mi bahsediyorsun? Neden uyarıda çıkıyor? Oraya yazmadım.
uint'ten mi bahsediyorsun? Neden uyarıda çıkıyor? Oraya yazmadım.
ilk Uyarıda hesaplanan farkı yanlış gösteriyorsunuz (taşmaları hesaba katmadan),
kodda büyük bir tamsayı değerinin olduğu ikinci Uyarı, sağladığınız parçada değil :-)
Bu sadece nokta, kodda mevcut değil.
Göstergenin tüm kodu.
Danışmanın tüm kodu.
Bu sadece nokta, kodda mevcut değil.
Göstergenin tüm kodu.
Danışmanın tüm kodu.
bakın daha neler bıraktınız.
time.mq4'e bakın - belki uyarı gönderir
Bu sadece nokta, kodda mevcut değil.
Göstergenin tüm kodu.
Danışmanın tüm kodu.
Uyarı yapısındaki göstergede. Uyarı (b) altında 5 satır;
Görünüşe göre bu, sistem başladığından beri geçen milisaniye sayısıdır )
Hızlı işlem butonlarının durumu nasıl izlenir?
Yani, grafikte ya da değiller.
İstemi işlevi veya başka bir yöntem ne.