[ARCHIVIO] Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 3. - pagina 477
Se, per esempio, 10 anni il profitto su un conto di trading fosse del 500% (le cifre sono figurative) - come calcolare il profitto medio annuo, tenendo anche conto che tutti i profitti sono reinvestiti? Grazie!
frixer: Ciao a tutti, felice anno nuovo. Non riesco a trovare un modo per piazzare un ordine solo una volta, se la condizione è soddisfatta dopo di che l'ordine viene piazzato, allora se c'è un ordine per la seconda volta non verrà piazzato. Vorrei farvi un esempio.
Se, per esempio, 10 anni il profitto su un conto di trading fosse del 500% (le cifre sono figurative) - come calcolare il profitto medio annuo, tenendo anche conto che tutti i profitti sono reinvestiti? Grazie!
La radice quadrata di 6, poi sottrarre 1 e moltiplicare per 100. Si ottiene il 19,62% all'anno.
L'ho letto ma non funziona con il mio algoritmo e ho ancora ordini su ogni tick.
//+------------------------------------------------------------------+//| trade v1.mq4 |//| |//| frixer@yandex.ru |//+------------------------------------------------------------------+//--- input parameters//extern int Время;//extern int Input;//extern int SL;//extern int TP;//+------------------------------------------------------------------+//| expert initialization function |//+------------------------------------------------------------------+int init()
{
//----//----return(0);
}
//+------------------------------------------------------------------+//| expert deinitialization function |//+------------------------------------------------------------------+int deinit()
{
//----//----return(0);
}
//+------------------------------------------------------------------+//| expert start function |//+------------------------------------------------------------------+int start()
{
//----int bars = 9; // количество баровint gmt = 16; // время входаdoubleinput = 0.0010; // вход на рынокdouble sl = 100; // уровень SL от высоты коробки в %double tp = 100;
int lot=1;
int topOrder,bottomOrder;
if (Hour()==gmt) // проверяем свечу
{
double Shift_high = iHighest(NULL,PERIOD_H1,MODE_HIGH,bars,0); //поиск бара с максимальной ценой из bars начиная с 0-го бараdouble Shift_low = iLowest (NULL,PERIOD_H1,MODE_LOW ,bars,0); //поиск бара с минимальной ценой из bars начиная с 0-го бараdouble Price_high = iHigh (NULL,PERIOD_H1,Shift_high); // присвоение переменной максимального значение ценыdouble Price_low = iLow (NULL,PERIOD_H1,Shift_low); // присвоение переменной минимального значение ценыdouble Hinput = Price_high + input; // вверхняя граница входаdouble Linput = Price_low - input; // нижняя граница входаdouble height_box = Price_high - Price_low; // высота коробки barsdouble volumeSL = height_box / 100 * sl; // уровень SL зависит от %
topOrder=OrderSend(Symbol(),OP_BUYSTOP,lot,Hinput,3,Price_high-(height_box/100*sl),Price_high+(height_box/100*tp),"BUY",16384,0,Green);
if (topOrder<0)
{
Print("Верхний ордер ошибка #", GetLastError());
return(0);
}
}
//----return(0);
//----return(0);
}
//+------------------------------------------------------------------+
Ho provato in questo modo (il mio amico me l'ha consigliato) ma non funziona.
int Orerov=0;
int Orderov_all = OrdersTotal(); // всего ордеров в терминалеfor (int n = 0;n<Orderov_all;n++) // начало цикла перебора ордеров
{
if(OrderSelect(n,SELECT_BY_POS)==TRUE) // выбран первый в списке ордерif(Comm == OrderComment()) // условие совпадения комментария
{
Tip= OrderType(); // тип
Cena=NormalizeDouble(OrderOpenPrice(),4); // цена
Ticket= OrderTicket(); // тикет
Stop=NormalizeDouble(OrderStopLoss(),4); // стоп-лосс
LOT=NormalizeDouble(OrderLots(),1); // размер лота
Orderov=1; //
}
}
frixer: Ciao a tutti, felice anno nuovo. Non riesco a trovare un modo per piazzare un ordine solo una volta, se la condizione è soddisfatta dopo di che l'ordine viene piazzato, allora se c'è un ordine per la seconda volta non verrà piazzato. Se può fare un esempio.
if (OrdersTotal() > 0) {
return(0);
}
// Если установлен хоть один ордер, то никакой код после этого комментария уже не выполнится
Il problema principale è che iBars non carica i prezzi di periodi diversi da quello attuale...
tutti i trucchi MQL come IndicatorCounted e RefreshRates
funziona solo per il periodo corrente, cioè iBars prende dalla storia e la storia viene caricata solo cambiando il periodo sul grafico. Cosa fare? MQL ha qualche strumento per caricare barre di altri periodi (diversi da quello corrente) in background?
Il problema principale è che iBars non carica i prezzi di un periodo diverso da quello corrente...
Il tuo problema principale è che iBars non carica i prezzi, ma il numero di barre conosciute per un dato periodo. E, come ho appena controllato, lo fa abbastanza correttamente sia nel tester che sul grafico.
Se, per esempio, 10 anni il profitto su un conto di trading fosse del 500% (le cifre sono figurative) -
come calcolare il profitto medio annuo, tenendo anche conto che tutti i profitti sono reinvestiti?
Grazie!
Ciao a tutti, felice anno nuovo. Non riesco a trovare un modo per piazzare un ordine solo una volta, se la condizione è soddisfatta dopo di che l'ordine viene piazzato, allora se c'è un ordine per la seconda volta non verrà piazzato. Vorrei farvi un esempio.
L'esempio del libro di testo è il tuo caso.
Se, per esempio, 10 anni il profitto su un conto di trading fosse del 500% (le cifre sono figurative) -
come calcolare il profitto medio annuo, tenendo anche conto che tutti i profitti sono reinvestiti?
Grazie!
L'esempio del tutorial è il vostro caso.
L'ho letto ma non funziona con il mio algoritmo e ho ancora ordini su ogni tick.
Ho provato in questo modo (il mio amico me l'ha consigliato) ma non funziona.
Ciao a tutti, felice anno nuovo. Non riesco a trovare un modo per piazzare un ordine solo una volta, se la condizione è soddisfatta dopo di che l'ordine viene piazzato, allora se c'è un ordine per la seconda volta non verrà piazzato. Se può fare un esempio.
La radice della decima potenza di 6, poi sottrarre 1 e moltiplicare per 100. Otteniamo il 19,62% all'anno.
Grazie!
Comunque, ecco la domanda,
Ho un indicatore multiperiodale.
Per ottimizzare i calcoli, uso il seguente ciclo
// TimeFrames[i] массив с периодами
for (i=0; i<NumTimeFrames; i++)
{if (total_bars[i] != iBars(instrument, TimeFrames[i]) )
{
// тут вычисления индиктора
total_bars[i] = iBars(instrument, TimeFrames[i]);
}
}
Il problema principale è che iBars non carica i prezzi di periodi diversi da quello attuale...
tutti i trucchi MQL come IndicatorCounted e RefreshRates
funziona solo per il periodo corrente, cioè iBars prende dalla storia e la storia viene caricata solo cambiando il periodo sul grafico. Cosa fare? MQL ha qualche strumento per caricare barre di altri periodi (diversi da quello corrente) in background?
p.s. spero di non aver divagato ((Il problema principale è che iBars non carica i prezzi di un periodo diverso da quello corrente...