[АРХИВ!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 4. - страница 216

 
Top2n:
Но все ровно, что то не могу дойти, как можно закрыть отложенный именно тот который был открыт в паре с бай.
Например задавать отложке магиком тикет бая.
 

Всем доброго времени суток.

Уважаемые знатоки кодописания, попытался написать индикатор, вроде получилось но только на истории рисует так как задуманно, а дальше с поступлением новых котировок рисует обычную машку.

код прилагаю:

int start()
{
int counted_bars=IndicatorCounted();
int i,n;
double Stark=0;
//----
i=Bars-counted_bars-1;//+50;
// n=Bars-counted_bars-1;
while(i>=0)
{
//----

double Ma=iMA(NULL,0,PerMa,Shift,MODE_EMA,PRICE_CLOSE,i);
//double Ma1=iMA(NULL,0,PerMa,Shift,MODE_EMA,PRICE_CLOSE,i+1);
if(Stark+Step*Point<Ma)Stark=Ma;
if(Stark-Step*Point>Ma)Stark=Ma;
ABuf[i]=Stark;

//----
i--;
}
return(0);
}


помогите исправить, чтобы он и дальше рисовал ступени.

Заранее благодарен.

Gek.

 
Добрій день!!! Напомните пожалуста, как правильно написать віражение, а то компилятор ругается. Ассигмент ему, точка с запятой вроде лишняя.
int schet=0;
int start()
  { double Lots;
//----
 for(schet;schet<kolitsestvo;schet++){
 
Dimka-novitsek:
Добрій день!!! Напомните пожалуста, как правильно написать віражение, а то компилятор ругается. Ассигмент ему, точка с запятой вроде лишняя.

первые две строчки поменяй местами
 

Точней так


int start()
{ double Lots; int schet=0;
//----
for(schet;schet<kolitsestvo;schet++){

 
Top2n:

тикет последней закрытой позиции==с установленной отложенной позицией + 1

Здрасьте, а сервер только вам позиции открывает?

У функции OrderSend есть поле magic -- вот его и курить.

 

        int schet=0;
int start()
  { double Lots;
//----
 if(schet<kolitsestvo){schet++;
Gek34
:



первые две строчки поменяй местами


Извините, будет ли тогда цикл віполняться количество раз? Не, вот я подумал-не, точно на каждом тике будет. Ладно, я подумаю. Спасибо.

Подумал.

 
Dimka-novitsek:


Извините, будет ли тогда цикл віполняться количество раз? Не, вот я подумал-не, точно на каждом тике будет. Ладно, я подумаю. Спасибо.

Подумал.

вот так вудет выполняться нужное количество раз

int start()
{ double Lots;
//----
for(int schet=0;schet<kolitsestvo;schet++){
 

Господа, ну хоть убей целый день сижу не на дюйм не приблизился к разгадке.

Как же реализовать эту алгоритм в код?

подается сигнал "sig1" срабатывает команда BUY и устанавливается отложенный ордер SELLSTOP ниже ордера BUY.

при закрытие позиции BUY , SELLSTOP тоже удаляется.

Но как быть когда этот BAY не закрылся, и открылся следующий BUY и следующий и т.д.

Этот SELLSTOP который установлен первым нужно как то вычислить, чтоб закрыть после того когда уже и первый BUY закроется.

Может у кого нибудь есть готовый  код. Пробовал через функции Кими в частности: 

пытался возвратить тикет последнего закрытого ордера и сравнить его с тикетом отложенного ордера прибавив к нему 1-( т.к. отложка открывалась всегда после бая)

но нечего не вышло. Помогите плиз без вас не куда)
 

так тебе же уже подсказывали?

открыл Ордер Бай - запомнил Тикет этого ордера

установил ордер селлстоп - в Магик этого ордера записывай Тикет ордера бай...

---

в старте вызывай функцию проверки наличия ордера бай по магику в селлстопах...

при отсутствии такого ордера(бай) - удали Селлстоп...

делов то на 15 строчек кода...

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