Сырые идеи - страница 13

 
 

Новая система на основе Фибоначчи

Вот система, которую я нашел в mt3 и преобразовал ее в mt4.

Похоже, что она может иметь некоторые перспективы. но в настоящее время у нее есть один недостаток, который я вижу.

Линии не восстанавливаются, поэтому вам нужно удалять индикатор каждый день, а затем устанавливать его заново.

Я полагаю, что индикатору просто нужно установить код удаления объекта, но у меня не было времени, возможно, позже в этом месяце. Как я уже сказал, он отлично работает, если вы удаляете его с графика, а затем устанавливаете заново (в начале каждой сессии).

Следует также добавить, что он использует индикатор zig-zag, поэтому он также должен быть в каталоге индикаторов.

Наслаждайтесь

Файлы:
 

трендовая система?

Я собираюсь построить автоматическую торговую систему на основе индикатора C. Youngs APE. Часть индикатора, которую я хочу взять за основу, - это индикатор "Альфа". Вкратце, индикатор альфа очень похож на ADX или индекс верификации диапазона действия, см. stocks commodities mag april 2006. Этот альфа-индикатор более отзывчив, чем традиционный adx и т.д.. Он гораздо быстрее входит в тренд и, что более важно, быстрее выходит из него.

Я хотел бы разработать автоматическую торговую систему, которая будет выходить в длинную позицию, когда альфа начинает тренд, обычно это около 1.0 альфа. Я торгую на демо с помощью vttrader, поэтому я не могу провести бэктест, как metatrader, поэтому я прошу дать мне любые предложения по прибыльному трендовому методу входа. Я думаю использовать базовое пересечение скользящей средней при тренде альфы. Однако я не уверен, какой тип системы идеально подходит для трендовых рынков? Я мог бы использовать индикатор линейной регрессии, cci, стохастик, macd, в общем, вариантов бесконечное множество. Я просто прошу любого совета, какой тип трейдеры считают хорошим во время сильных трендовых рынков. Любые предложения будут собраны и отработаны на демо на vttrader на дневных, 4-часовых, часовых, 15-минутных таймфреймах на основных кроссах. Я торгую всего около 6 месяцев, я прочитал много книг и у меня просто нет достаточного опыта в том, что было бы идеально с этим индикатором. Я также обнаружил, что как только индикатор начинает тренд, после основного тренда с высокой вероятностью происходит встречная торговля, так что метод входа/выхода на развороте также был бы подходящим. Пожалуйста, посоветуйте, спасибо, M Rippy

 

SnapshotI

Здравствуйте,

Я нашел этот индикатор, который позволит вам делать снимки вашей диаграммы.

Это означает, что его можно прикрепить к любому графику, где вам нужно изображение.

Папка с индикаторами и изображениями находится в папке :Files

Файлы:
snapshoti.mq4  2 kb
 

Требуется модификация кодирования для советника

Следующий советник основан на Parabolic Sar. Он работает очень хорошо, но вот с чем я испытываю трудности, так это со следующим. Советник основан на 30-минутном графике EUR/USD. На быстро движущемся рынке советник будет открывать и закрывать 2 или более сделок на одном и том же баре. Я хочу, чтобы он торговал только один раз на 30-минутном баре. После исполнения и закрытия сделки он НЕ ДОЛЖЕН торговать в течение следующих 30 минут. Любая помощь будет очень признательна. Большое спасибо

Еще одна вещь, которая действительно улучшит этот советник. Когда появляется первая точка, он входит почти в конце бара (конец 30-минутного бара). Если возможно, я бы хотел, чтобы он входил в сделку, как только первая точка появляется выше или ниже бара.

С наилучшими пожеланиями

Файлы:
par5.mq4  9 kb
 

кто-нибудь видел индикатор диапазона свечи или бара?

Привет всем, Кто-нибудь знает индикатор свечи или бара, который может быть настроен на оповещение, если определенный диапазон достигается во время этой свечи или бара. Например, доджи с нулевым диапазоном пунктов между ценой открытия и закрытия или, наоборот, с диапазоном в пятьдесят пунктов на свече или баре, и когда бар или свеча закрывается, если заданное число достигает установленного диапазона, появляется оповещение? Спасибо, Рип

 

Заказ отложен

Здравствуйте,

Код хотелось бы чтобы советник выставлял только 3 ордера SELLLIMIT или BUYLIMIT каждый раз, сохраняя эти ордера в течении 3 часов. Либо необходим ограничитель висящих ордеров, у меня система выставила ордера непрерывной формы и нужно только 3.

С благодарностью

 

Пример нечеткой экспертной системы

Здравствуйте

Просто перейдите на следующую страницу :

http://merlotti.com/EngHome/Computing/software.htm

Вы найдете документацию, пример и исходный код (модифицируемый)......

Хорошее исследование.....
DV
 

Помогите мне пожалуйста - заказ отложен

Здравствуйте,

Код хотелось бы чтобы советник выставлял только 3 ордера SELLLIMIT или BUYLIMIT каждый раз, сохраняя эти ордера в течении 3 часов. Либо необходим ограничитель висящих ордеров, у меня система выставила ордера непрерывной формы и нужно только 3.

Благодарен

Total=OrdersTotal();

if(OrdersTotal()==0)

{b1=0;b2=0;b3=0;s1=0;s2=0;s3=0;}

if(OrdersTotal()>0)

{

//Print("Total Orders:",OrdersTotal());

//Print(b1," ",b2," ",b3," ",s1," ",s2," ",s3);

for(cnt=0;cnt<Total;cnt++)

{

OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);

if(OrderMagicNumber()==2)

{b1=OrderTicket(); }

if(OrderMagicNumber()==4)

{b2=OrderTicket(); }

if(OrderMagicNumber()==6)

{b3=OrderTicket(); }

if(OrderMagicNumber()==1)

{s1=OrderTicket(); }

if(OrderMagicNumber()==3)

{s2=OrderTicket(); }

if(OrderMagicNumber()==5)

{s3=OrderTicket(); }

}

}

//Купить 1

double expirar=(CurTime()+PERIOD_H1*120);

if(b1==0)

{

if (Order == SIGNAL_BUY && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars != BarCount)))) {

if(!IsTrade) {

//Проверка свободной маржи

if (AccountFreeMargin() < (1000 * Lots)) {

Print("У нас нет денег. Свободная маржа = ", AccountFreeMargin());

return(0);

}

if (StopLossMode) StopLossLevel = Ask - StopLoss * Point; else StopLossLevel = 0.0;

if (TakeProfitMode) TakeProfitLevel = Ask + TakeProfit * Point; else TakeProfitLevel = 0.0;

Ticket = OrderSend(Symbol(), OP_BUYLIMIT, Lots,B1, Slippage, STPBUY,BS, "Buy(#" + MagicNumber + ")", MagicNumber,expirar, DodgerBlue);

if(Ticket > 0)

{

if (OrderSelect(Ticket, SELECT_BY_TICKET, MODE_TRADES)) Print("Открыт ордер BUY : ", OrderOpenPrice()); else Print("Ошибка открытия ордера BUY : ", GetLastError());

{

b1=Ticket;

Print(Ticket);}

if (EachTickMode) TickCheck = True;

if (!EachTickMode) BarCount = Bars;

return(0);

}

}

}

}

//Купить 2

if (b2==0)

{

if (Order == SIGNAL_BUY && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars != BarCount)))) {

if(!IsTrade) {

//Проверка свободной маржи

if (AccountFreeMargin() < (1000 * Lots)) {

Print("У нас нет денег. Свободная маржа = ", AccountFreeMargin());

return(0);

}

if (StopLossMode) StopLossLevel = Ask - StopLoss * Point; else StopLossLevel = 0.0;

if (TakeProfitMode) TakeProfitLevel = Ask + TakeProfit * Point; else TakeProfitLevel = 0.0;

Ticket = OrderSend(Symbol(), OP_BUYLIMIT, Lots,B2, Slippage, STPBUY,BS-0.0001, "Buy(#" + MagicNumber + ")", MagicNumber, expirar, Blue);

if(Ticket > 0)

{

if (OrderSelect(Ticket, SELECT_BY_TICKET, MODE_TRADES)) Print("Открыт ордер BUY : ", OrderOpenPrice()); else Print("Ошибка открытия ордера BUY : ", GetLastError());

{

b2=Ticket;

Print(Ticket);}

if (EachTickMode) TickCheck = True;

if (!EachTickMode) BarCount = Bars;

return(0);

}

}

}

}

//Купить 3

if (b3==0)

{

if (Order == SIGNAL_BUY && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars != BarCount)))) {

if(!IsTrade) {

//Проверка свободной маржи

if (AccountFreeMargin() < (1000 * Lots)) {

Print("У нас нет денег. Свободная маржа = ", AccountFreeMargin());

return(0);

}

if (StopLossMode) StopLossLevel = Ask - StopLoss * Point; else StopLossLevel = 0.0;

if (TakeProfitMode) TakeProfitLevel = Ask + TakeProfit * Point; else TakeProfitLevel = 0.0;

Ticket = OrderSend(Symbol(), OP_BUYLIMIT, Lots,B3, Slippage, STPBUY,BS-0.0002, "Buy(#" + MagicNumber + ")", MagicNumber, expirar, Aqua);

if (Ticket > 0) {

if (OrderSelect(Ticket, SELECT_BY_TICKET, MODE_TRADES)) Print("Открыт ордер BUY : ", OrderOpenPrice()); else Print("Ошибка открытия ордера BUY : ", GetLastError());

{

b3=Ticket;

Print(Ticket);}

if (EachTickMode) TickCheck = True;

if (!EachTickMode) BarCount = Bars;

return(0);

}

}

}

}

//Продажа-1

if (s1==0)

{

if (Order == SIGNAL_SELL && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars != BarCount)))) {

if(!IsTrade) {

//Проверка свободной маржи

if (AccountFreeMargin() < (1000 * Lots)) {

Print("У нас нет денег. Свободная маржа = ", AccountFreeMargin());

return(0);

}

if (StopLossMode) StopLossLevel = Bid + StopLoss * Point; else StopLossLevel = 0.0;

if (TakeProfitMode) TakeProfitLevel = Bid - TakeProfit * Point; else TakeProfitLevel = 0.0;

Ticket = OrderSend(Symbol(), OP_SELLLIMIT, Lots, S1, Slippage, STSELL, BS, "Sell(#" + MagicNumber + ")", MagicNumber,0, DeepPink);

if (Ticket > 0) {

if (OrderSelect(Ticket, SELECT_BY_TICKET, MODE_TRADES)) Print(" Открытордер SELL: ", OrderOpenPrice()); else Print("Ошибка открытия ордера SELL : ", GetLastError());

{

s1=Ticket;

Print(Ticket);}

if (EachTickMode) TickCheck = True;

if (!EachTickMode) BarCount = Bars;

return(0);

}

}

}

}

//Продаем 2

if (s2==0)

{

if (Order == SIGNAL_SELL && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars != BarCount)))) {

if(!IsTrade) {

//Проверка свободной маржи

if (AccountFreeMargin() < (1000 * Lots)) {

Print("У нас нет денег. Свободная маржа = ", AccountFreeMargin());

return(0);

}

if (StopLossMode) StopLossLevel = Bid + StopLoss * Point; else StopLossLevel = 0.0;

if (TakeProfitMode) TakeProfitLevel = Bid - TakeProfit * Point; else TakeProfitLevel = 0.0;

Ticket = OrderSend(Symbol(), OP_SELLLIMIT, Lots,S2, Slippage, STSELL, BS+0.0001, "Sell(#" + MagicNumber + ")", MagicNumber,0, DeepPink);

if (Ticket > 0) {

if (OrderSelect(Ticket, SELECT_BY_TICKET, MODE_TRADES)) Print("Открыт ордер SELL : ", OrderOpenPrice()); else Print("Ошибка открытия ордера SELL : ", GetLastError());

{

s2=Ticket;

Print(Ticket);}

if (EachTickMode) TickCheck = True;

if (!EachTickMode) BarCount = Bars;

return(0);

}

}

}

}

//Продаем 3

if (s3==0)

{

if (Order == SIGNAL_SELL && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars != BarCount)))) {

if(!IsTrade) {

//Проверка свободной маржи

if (AccountFreeMargin() < (1000 * Lots)) {

Print("У нас нет денег. Свободная маржа = ", AccountFreeMargin());

return(0);

}

if (StopLossMode) StopLossLevel = Bid + StopLoss * Point; else StopLossLevel = 0.0;

if (TakeProfitMode) TakeProfitLevel = Bid - TakeProfit * Point; else TakeProfitLevel = 0.0;

Ticket = OrderSend(Symbol(), OP_SELLLIMIT, Lots, S3, Slippage, STSELL, BS+0.0002, "Sell(#" + MagicNumber + ")", MagicNumber,0, DeepPink);

if (Ticket > 0) {

if (OrderSelect(Ticket, SELECT_BY_TICKET, MODE_TRADES)) Print("Открыт ордер SELL : ", OrderOpenPrice()); else Print("Ошибка открытия ордера SELL : ", GetLastError());

{

s3=Ticket;

Print(Ticket);}

if (EachTickMode) TickCheck = True;

if (!EachTickMode) BarCount = Bars;

return(0);

}

}

}

}

if (!EachTickMode) BarCount = Bars;

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

if(OrderType()==OP_BUYLIMIT)

{

OrderDelete(OrderTicket());

if(OrderTicket()==b1) {b1=0; return;}

if(OrderTicket()==b2) {b2=0; return;}

if(OrderTicket()==b3) {b3=0; return;}

}

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

if(OrderType()==OP_SELLLIMIT)

{

OrderDelete(OrderTicket());

if(OrderTicket()==s1) {s1=0; return;}

if(OrderTicket()==s2) {s2=0; return;}

if(OrderTicket()==s3) {s3=0; return;}

}

OrderSelect(b1,SELECT_BY_TICKET);

if(OrderClosePrice()>0) {b1=0;}

OrderSelect(b2,SELECT_BY_TICKET);

if(OrderClosePrice()>0) {b2=0;}

OrderSelect(b3,SELECT_BY_TICKET);

if(OrderClosePrice()>0) {b3=0;}

OrderSelect(s1,SELECT_BY_TICKET);

if(OrderClosePrice()>0) {s1=0;}

OrderSelect(s2,SELECT_BY_TICKET);

if(OrderClosePrice()>0) {s2=0;}

OrderSelect(s3,SELECT_BY_TICKET);

if(OrderClosePrice()>0) {s3=0;}

}

Где моя ошибка?

 

Примеры и демонстрации Icustoms

Привет Гуру кода и программисты

Я хотел бы поблагодарить вас за создание курса по программированию. Не могли бы вы привести примеры Icustoms Experts и как написать с нуля.

Выбирайте наугад любые индикаторы, например три. Объясните, как я могу добавить больше и включить и выключить их, чтобы я мог попробовать разные вещи.

Заранее благодарю вас

Доктор Гейнс

Причина обращения: