포럼을 어지럽히 지 않도록 모든 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 6. - 페이지 214

 
solnce600 :

그게 다야.... 난 이미 내 뇌를 다 망가뜨렸어.

내가 SECOND CONDITION을 잘못 추측했나요?


귀하의 코드에 관계없이 예제를 작성했습니다. 이것은 중괄호 { }가 있는 곳과 없는 곳의 예입니다... 어느 줄과 언제 실행할 것인지 썼습니다. 코드에서 논리를 구성하는 방법을 분명히 하고 싶었습니다. 당신은 그것에 중괄호가 없습니다 ... 그래서이 경우에 어떻게되는지 내 예를보십시오.

당신은 추측 할 필요가 없습니다!!!!!!!!!!!!!!!!! 그냥 이해하려고...

 
artmedia70 :

귀하의 코드에 관계없이 예제를 작성했습니다. 이것은 중괄호 { }가 있는 곳과 없는 곳의 예입니다... 어느 줄과 언제 실행할 것인지 썼습니다. 코드에서 논리를 구성하는 방법을 분명히 하고 싶었습니다. 당신은 그것에 중괄호가 없습니다 ... 그래서이 경우에 어떻게되는지 내 예를보십시오.

당신은 추측 할 필요가 없습니다!!!!!!!!!!!!!!!!! 그냥 이해하려고...


감사합니다 내일은 상쾌한 마음으로 선반에 다 올려보도록 하겠습니다.
 

좋은 저녁 그러한 작업을 구현하는 방법을 알려주십시오.

특정 조건에서 거래가 시작됩니다. 그러면 토핑이 오는데, 여기서 문제는 이전 거래와 일정 거리 이상 가격이 가까우면 토핑이 안 열리도록 하는 방법입니다. 즉, 가격이 예를 들어 마지막 항목(첫 번째 항목이든 5.10이든 상관없음)에서 30p보다 큰 경우 거래를 열지 않아야 합니다.

답장을 보내주셔서 감사합니다.

 
teplovoz :

좋은 저녁 그러한 작업을 구현하는 방법을 알려주십시오.

특정 조건에서 거래가 시작됩니다. 그러면 토핑이 오는데, 여기서 문제는 이전 거래와 일정 거리 이상 가격이 가까우면 토핑이 안 열리도록 하는 방법입니다. 즉, 가격이 예를 들어 마지막 항목(첫 번째 항목이든 5.10이든 상관없음)에서 30p 보다 큰 경우 거래를 열지 않아야 합니다.

답변 감사합니다.

시장과 가장 가까운 위치 사이, 아마도 그렇게 될 것입니다.

기능

 //+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 19.02.2008                                                     |
//|  Описание : Возвращает расстояние в пунктах между рынком и ближайшей       |
//|             позицей                                                        |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   ("" или NULL - текущий символ)          |
//|    op - торговая операция          (    -1      - любая позиция)           |
//|    mn - MagicNumber                (    -1      - любой магик)             |
//+----------------------------------------------------------------------------+
int DistMarketAndPos( string sy= "" , int op=- 1 , int mn=- 1 ) {
   double d, p;
   int i, k= OrdersTotal (), r= 1000000 ;

   if (sy== "" || sy== "0" ) sy= Symbol ();
  p=MarketInfo(sy, MODE_POINT);
   if (p== 0 ) if ( StringFind (sy, "JPY" )< 0 ) p= 0.0001 ; else p= 0.01 ;
   for (i= 0 ; i<k; i++) {
     if ( OrderSelect (i, SELECT_BY_POS, MODE_TRADES)) {
       if ((OrderSymbol()==sy) && (op< 0 || OrderType()==op)) {
         if (mn< 0 || OrderMagicNumber()==mn) {
           if (OrderType()==OP_BUY) {
            d= MathAbs (MarketInfo(sy, MODE_ASK)-OrderOpenPrice())/p;
             if (r>d) r= NormalizeDouble (d, 0 );
          }
           if (OrderType()==OP_SELL) {
            d= MathAbs (OrderOpenPrice()-MarketInfo(sy, MODE_BID))/p;
             if (r>d) r= NormalizeDouble (d, 0 );
          }
        }
      }
    }
  }
   return (r);
}

부름

 if (DistMarketAndPos()> 30 )
   {
//открываемся
   }
 
r772ra :
시장과 가장 가까운 위치 사이, 아마도 그렇게 될 것입니다.

나는 논리를 이해합니다. 마지막 거래 의 시작 가격 을 계산하는 방법은 무엇입니까?
 
위의 첨가제
 
OrderOpenPrice () 함수가 가격을 반환한다는 것을 이해합니다.
, 그리고 기능으로 순서를 선택할 수 있음을 이해합니다. OrderSelect() ,하지만 마지막 것을 선택하는 방법은 무엇입니까?
 
r772ra :
위의 첨가제

이해하지 못했다...
 
teplovoz :

이해하지 못했다...


정확히 무엇?

 
r772ra :


정확히 무엇?


위의 보충은 무엇을 의미합니까?

일반적으로 의미는 다음과 같습니다.

if(Bid<=(N-30*Point) && 조건 하나 더)

{

판매 주문 열기 ;

}

N은 마지막 주문의 시작 가격입니다. 어떻게 찾을 수 있나요?