KimIV, non c'è uno script nella tua collezione che chiuderebbe tutti gli Oredar aperti: buy, sell, buystop, sellstop, buylimit, selllimit - forzatamente, ciclicamente, per chiudere senza errori e tutto?
KimIV, hai uno script nella tua collezione, come questo - ByMarketBuySymbols e ByMarketSellSymbols, solo comune, in modo che diciamo che lo script apre 5 posizioni per comprare e 2 per vendere?
Un suggerimento: se possibile, nel primo post, pubblicate e aggiornate una lista delle vostre funzionalità/script con i link alle relative pagine del ramo e una breve descrizione. Allora sarà super-attrezzo! Altrimenti, qualcuno da qualche parte su qualcosa "invierà a Kim" e poi si deve scorrere qui per molto tempo per trovare ...
mamma писал(а)>> Se è possibile, nel primo post, mettete una lista aggiornata delle vostre funzionalità/script con i link alle pagine del ramo e brevi descrizioni.
La prima pagina è già impossibile...
Lo posterò qui... Se il post da aggiornare viene bloccato, lo ripubblicherò. Quindi tenete d'occhio il thread :-)
Sposta il livello di prezzo StopLoss delle posizioni aperte utilizzando l'algoritmo TrailingStop. La funzione SimpleTrailing() accetta i seguenti parametri opzionali:
sy - Nome dello strumento. "" - qualsiasi simbolo, NULL - simbolo corrente. Il valore predefinito è "".
op - operazione commerciale. Valori validi: -1, OP_BUY, OP_SELL. Il valore predefinito è -1 - qualsiasi commercio.
Inoltre, la funzione SimpleTrailing() implica variabili globali (parametri esterni dello script o dell'Expert Advisor):
bool TSProfitOnly - Cambia la zona in cui inizia la pesca a strascico. Se True, il trawl inizierà a lavorare solo quando il profitto della posizione raggiunge il valore dei punti TStop.Buy/Sell+TrailingStep. Se Falso, l'Expert Advisor si assicurerà semplicemente che la posizione di stop rispetto al prezzo corrente non sia sempre oltre TStop.Buy/Sell+TrailingStep pips. In altre parole, se True, l'Expert Advisor lavora solo nella zona di profitto della posizione, mentre se False lavora nella zona negativa della posizione.
int TStop.Buy - Dimensione del trall in punti da comprare.
intTStop.Sell - Dimensione dello strascico in punti per la vendita.
int TrailingStep - Passo finale in punti. Questo è necessario per evitare frequenti richieste al rivenditore.
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 11.09.2008 |//| Описание : Сопровождение позиций простым тралом |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента ( "" - любой символ, |//| NULL - текущий символ) |//| op - операция ( -1 - любая позиция) |//| mn - MagicNumber ( -1 - любой магик) |//+----------------------------------------------------------------------------+void SimpleTrailing(string sy="",int op=-1,int mn=-1){double po, pp;int i, k=OrdersTotal();if( sy=="0") sy=Symbol();for( i=0; i< k; i++){if(OrderSelect( i, SELECT_BY_POS, MODE_TRADES)){if((OrderSymbol()== sy || sy=="")&&( op<0||OrderType()== op)){
po=MarketInfo(OrderSymbol(),MODE_POINT);if( mn<0||OrderMagicNumber()== mn){if(OrderType()==OP_BUY){
pp=MarketInfo(OrderSymbol(),MODE_BID);if(! TSProfitOnly || pp-OrderOpenPrice()> TStop. Buy* po){if(OrderStopLoss()< pp-( TStop. Buy+ TrailingStep-1)* po){
ModifyOrder(-1, pp- TStop. Buy* po,-1);}}}if(OrderType()==OP_SELL){
pp=MarketInfo(OrderSymbol(),MODE_ASK);if(! TSProfitOnly ||OrderOpenPrice()- pp> TStop. Sell* po){if(OrderStopLoss()> pp+( TStop. Sell+ TrailingStep-1)* po ||OrderStopLoss()==0){
ModifyOrder(-1, pp+ TStop. Sell* po,-1);}}}}}}}}
SZZ. Un Expert Advisor con un esempio di utilizzo della funzione SimpleTrailing() può essere trovato qui.
Non esiste una tale funzione. Gli oggetti possono essere creati e gestiti solo sul grafico a cui l'EA è collegato.
Grazie per la sua pronta risposta. Sarà disponibile nella versione 5 di Metatrader?
http://forum.alpari-idc.ru/showpost.php?p=368730&postcount=24
L'ho già trovato qui.
Grazie mille per un lavoro ben fatto.
Un suggerimento: se possibile, nel primo post, pubblicate e aggiornate una lista delle vostre funzionalità/script con i link alle relative pagine del ramo e una breve descrizione. Allora sarà super-attrezzo! Altrimenti, qualcuno da qualche parte su qualcosa "invierà a Kim" e poi si deve scorrere qui per molto tempo per trovare ...
Funzione MovingInWL().
Sposta il livello di prezzo StopLoss delle posizioni aperte a Breakeven. La funzione MovingInWL() accetta i seguenti parametri opzionali:
Inoltre, la funzione MovingInWL() ha variabili globali (parametri esterni dello script o dell'Expert Advisor):
SZZ. Potete trovare un Expert Advisor con un esempio di utilizzo della funzione MovingInWL() qui.
Se è possibile, nel primo post, mettete una lista aggiornata delle vostre funzionalità/script con i link alle pagine del ramo e brevi descrizioni.
La prima pagina è già impossibile...
Lo posterò qui... Se il post da aggiornare viene bloccato, lo ripubblicherò. Quindi tenete d'occhio il thread :-)
Funzione SimpleTrailing().
Sposta il livello di prezzo StopLoss delle posizioni aperte utilizzando l'algoritmo TrailingStop. La funzione SimpleTrailing() accetta i seguenti parametri opzionali:
Inoltre, la funzione SimpleTrailing() implica variabili globali (parametri esterni dello script o dell'Expert Advisor):
SZZ. Un Expert Advisor con un esempio di utilizzo della funzione SimpleTrailing() può essere trovato qui.
//------- Collegamento di moduli esterni -----------------------------------------+
#include "b-Positions.mqh" // Lavora con le posizioni
Dove trovare questo file?
//------- Collegamento di moduli esterni -----------------------------------------+
#include "b-Positions.mqh" // Lavora con le posizioni
Dove trovare questo file?
qui