Belgeleri okudunuz mu?
Parameters
bilet
[içinde] İkinci parametreye bağlı olarak sipariş dizini veya sipariş bileti.
seçme
[içinde] Bayrakları seçme. Aşağıdaki değerlerden herhangi biri olabilir:
SELECT_BY_POS - sipariş havuzundaki dizin,
SELECT_BY_TICKET - dizin, sipariş biletidir.
havuz=MODE_TRADES
[içinde] İsteğe bağlı sipariş havuzu dizini. Seçilen parametre SELECT_BY_POS olduğunda kullanılır. Aşağıdaki değerlerden herhangi biri olabilir:
MODE_TRADES (varsayılan)- işlem havuzundan seçilen emir (açılan ve bekleyen emirler),
MODE_HISTORY - geçmiş havuzundan seçilen sipariş (kapalı ve iptal edilen sipariş).
bool OrderSelect( int index, // index or order ticket int select , // flag int pool=MODE_TRADES // mode );
boopa26 açık siparişleri kapatmak istiyor, bu yüzden boopa üçüncü parametre olarak MODE_TRADES'i seçiyor
boopa26 SELECT_BY_POS veya SELECT_BY_TICKET yapar mı? boopa26 bilmiyor
SELECT_BY_POS //index inside order pool, SELECT_BY_TICKET //index is order ticket.
https://docs.mql4.com/trading/orderclose
boopa26, döngüler olmadan veya döngüler olmadan, ancak açık siparişleri sipariş seçme işleviyle kapatmak için if koşullarıyla nasıl döngü yapar?
dokümantasyon siparişi kapatma, sipariş biletinin bulunmasını gerektirir, ancak boopa26, bilet değil sipariş pozisyonunu bulmak için sipariş seçimi yapar
bool OrderClose( int ticket, // ticket double lots, // volume double price, // close price int slippage, // slippage color arrow_color // color );
1. sırayı seçin
2. siparişi kapat
nasıl olduğunu bilmiyor
//+------------------------------------------------------------------+ //| Moving Average.mq4 | //| Copyright 2005-2014, MetaQuotes Software Corp. | //| http://www.mql4.com | //+------------------------------------------------------------------+ #property copyright "2005-2014, MetaQuotes Software Corp." #property link "http://www.mql4.com" #property description "Moving Average sample expert advisor" #define MAGICMA 20131111 //--- Inputs input double Lots = 0.1 ; input double MaximumRisk = 0.02 ; input double DecreaseFactor= 3 ; input int MovingPeriod = 12 ; input int MovingShift = 6 ; //+------------------------------------------------------------------+ //| Calculate open positions | //+------------------------------------------------------------------+ int CalculateCurrentOrders( string symbol) { int buys= 0 ,sells= 0 ; //--- for ( int i= 0 ;i< OrdersTotal ();i++) { if ( OrderSelect (i,SELECT_BY_POS,MODE_TRADES)== false ) break ; if (OrderSymbol()== Symbol () && OrderMagicNumber()==MAGICMA) { if (OrderType()==OP_BUY) buys++; if (OrderType()==OP_SELL) sells++; } } //--- return orders volume if (buys> 0 ) return (buys); else return (-sells); } //+------------------------------------------------------------------+ //| Calculate optimal lot size | //+------------------------------------------------------------------+ double LotsOptimized() { double lot=Lots; int orders=HistoryTotal(); // history orders total int losses= 0 ; // number of losses orders without a break //--- select lot size lot= NormalizeDouble (AccountFreeMargin()*MaximumRisk/ 1000.0 , 1 ); //--- calcuulate number of losses orders without a break if (DecreaseFactor> 0 ) { for ( int i=orders- 1 ;i>= 0 ;i--) { if ( OrderSelect (i,SELECT_BY_POS,MODE_HISTORY)== false ) { Print ( "Error in history!" ); break ; } if (OrderSymbol()!= Symbol () || OrderType()>OP_SELL) continue ; //--- if (OrderProfit()> 0 ) break ; if (OrderProfit()< 0 ) losses++; } if (losses> 1 ) lot= NormalizeDouble (lot-lot*losses/DecreaseFactor, 1 ); } //--- return lot size if (lot< 0.1 ) lot= 0.1 ; return (lot); } //+------------------------------------------------------------------+ //| Check for open order conditions | //+------------------------------------------------------------------+ void CheckForOpen() { double ma; int res; //--- go trading only for first tiks of new bar if (Volume[ 0 ]> 1 ) return ; //--- get Moving Average ma= iMA ( NULL , 0 ,MovingPeriod,MovingShift, MODE_SMA , PRICE_CLOSE , 0 ); //--- sell conditions if (Open[ 1 ]>ma && Close[ 1 ]<ma) { res= OrderSend ( Symbol (),OP_SELL,LotsOptimized(),Bid, 3 , 0 , 0 , "" ,MAGICMA, 0 ,Red); return ; } //--- buy conditions if (Open[ 1 ]<ma && Close[ 1 ]>ma) { res= OrderSend ( Symbol (),OP_BUY,LotsOptimized(),Ask, 3 , 0 , 0 , "" ,MAGICMA, 0 ,Blue); return ; } //--- } //+------------------------------------------------------------------+ //| Check for close order conditions | //+------------------------------------------------------------------+ void CheckForClose() { double ma; //--- go trading only for first tiks of new bar if (Volume[ 0 ]> 1 ) return ; //--- get Moving Average ma= iMA ( NULL , 0 ,MovingPeriod,MovingShift, MODE_SMA , PRICE_CLOSE , 0 ); //--- for ( int i= 0 ;i< OrdersTotal ();i++) { if ( OrderSelect (i,SELECT_BY_POS,MODE_TRADES)== false ) break ; if (OrderMagicNumber()!=MAGICMA || OrderSymbol()!= Symbol ()) continue ; //--- check order type if (OrderType()==OP_BUY) { if (Open[ 1 ]>ma && Close[ 1 ]<ma) { if (!OrderClose(OrderTicket(),OrderLots(),Bid, 3 ,White)) Print ( "OrderClose error " , GetLastError ()); } break ; } if (OrderType()==OP_SELL) { if (Open[ 1 ]<ma && Close[ 1 ]>ma) { if (!OrderClose(OrderTicket(),OrderLots(),Ask, 3 ,White)) Print ( "OrderClose error " , GetLastError ()); } break ; } } //--- } //+------------------------------------------------------------------+ //| OnTick function | //+------------------------------------------------------------------+ void OnTick () { //--- check for history and trading if ( Bars < 100 || IsTradeAllowed()== false ) return ; //--- calculate open orders by current symbol if (CalculateCurrentOrders( Symbol ())== 0 ) CheckForOpen(); else CheckForClose(); //--- } //+------------------------------------------------------------------+hareketli ortalama uzman danışman, açık siparişleri kapatmak için döngüyü kullanır
"Boopa26" nın aşağıdakileri yapması gerektiğini düşünüyorum:
- İlk olarak, "boopa26"nın önce kodlamanın temellerini öğrenmesi gerekir (C'deki gibi).
- O zaman "boopa26" Kitabı/ Eğiticiyi okumalı ve takip etmelidir (eski ve güncelliğini yitirmiş olsa bile).
- Aynı zamanda, "boopa26" Kitapta/Öğreticide bahsedilmeyen MQL4 Güncellemelerine özel dikkat göstererek tüm belgeleri okumalıdır.
- Ardından, "boopa26"nın, Kullanıcı Kodu Tabanındaki Göstergeler, Uzman Danışmanlar (EA'lar) ve Komut Dosyaları için birkaç kod örneğini incelemesi gerekir.
- Ardından "boopa26" kendi, ancak çok basit Göstergeleri yapmaya başlayabilir ve tam olarak anlayıp daha karmaşık Göstergeler oluşturabilene kadar yavaş yavaş bunların üzerine inşa edebilir.
- Sonra "boopa26" kendi, ancak çok basit EA'ları yapmaya başlayabilir ve tam olarak anlayana ve daha karmaşık EA'lar yapana kadar yavaş yavaş bunların üzerine inşa edebilir.
"boopa26" ayrıca çok önemli bir ders öğrenmelidir, "boopa26" gerekli tüm adımları atlamamalıdır, aksi takdirde "boopa26" herkesin zamanını boşa harcar ve "güzel bir pasta" yerine, tüm "boopa26" "yanmış kömür" dir.
"Boopa26" nın aşağıdakileri yapması gerektiğini düşünüyorum:
- İlk olarak, "boopa26"nın önce kodlamanın temellerini öğrenmesi gerekir (C'deki gibi).
- O zaman "boopa26" Kitabı/ Eğiticiyi okumalı ve takip etmelidir (eski ve güncelliğini yitirmiş olsa bile).
- Aynı zamanda, "boopa26" Kitapta/Öğreticide bahsedilmeyen MQL4 Güncellemelerine özel dikkat göstererek tüm belgeleri okumalıdır.
- Ardından, "boopa26"nın, Kullanıcı Kodu Tabanındaki Göstergeler, Uzman Danışmanlar (EA'lar) ve Komut Dosyaları için birkaç kod örneğini incelemesi gerekir.
- Ardından "boopa26" kendi, ancak çok basit Göstergeleri yapmaya başlayabilir ve tam olarak anlayıp daha karmaşık Göstergeler oluşturabilene kadar yavaş yavaş bunların üzerine inşa edebilir.
- Sonra "boopa26" kendi, ancak çok basit EA'ları yapmaya başlayabilir ve tam olarak anlayana ve daha karmaşık EA'lar yapana kadar yavaş yavaş bunların üzerine inşa edebilir.
"boopa26" ayrıca çok önemli bir ders almalıdır, "boopa26" gerekli tüm adımları atlamamalıdır, aksi takdirde "boopa26" herkesin zamanını boşa harcar ve "güzel bir pasta" yerine sahip olacağı tek şey " yanmış kömür".
1. c bilgisine ihtiyaç duymaz. mql4 farklı fonksiyonlardır
2. zaten kitap oku
3. belgeleri zaten okuyun
4. yazılı kod zaten
5. ?
6. ?
boopa26 insanların zamanını boşa harcamaz
Boopa26'ya kömürlü kek pişirmeyi öğreten FMIC öğretmeni
FMIC kömür kek sınıfı

- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
boopa26 emir gönderme kodu yazabilir ancak emirleri kapatmak için emir seçme fonksiyonunu yazamaz. çevrimsiz veya çevrimsiz siparişleri kapatmak için sipariş seçme fonksiyonu yazmak istiyor. boopa26, if koşullarıyla siparişleri kapatmak için sipariş seçme işlevi yazmak istiyor ancak boopa26, siparişleri kapatmak için sipariş seçme işlevini birleştirmeyi anlamıyor
örnek satın al sipariş gönder
if(OrdersTotal()==0)OrderSend(Symbol(),OP_BUY,.1,Ask,3,0,0,NULL,9,0,clrNONE);
örnek sipariş seçin. boopa26 anlamıyor
OrderSelect( int indeksi , int seçimi , int havuzu )
int indeksi nedir?
int seçimi nedir?
int havuzu nedir?
sipariş seçimi nasıl yapılır?