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

 
그리고 마침내, 괜찮아. 내가 알아낼게. 그냥 고장났어. 죄송합니다. 코드가 바보 같을 가능성이 큽니다.
[Deleted]  
누가 할 수 있는지 알려주세요. 거래를 연 후 n(예: 5) 촛불로 거래를 마감하는 방법은 무엇입니까? 거래 개시 시간은 미리 알 수 없습니다.
 
kokos4 :
누가 할 수 있는지 알려주세요. 거래를 연 후 n(예: 5) 촛불로 거래를 마감하는 방법은 무엇입니까? 거래 개시 시간은 미리 알 수 없습니다.

n 개의 양초를 초로 변환 하고 시작 시간 에 추가하고 현재 시간과 비교합니다. 현재 시간이 길어지는 즉시 - 주문을 종료합니다.


 ////где-то в цикле перебора ордеров:
////
timer = OrderOpenTime()+ PeriodSeconds ()*n;

if ( TimeCurrent ()>timer) close(OrderTicket());
////////////////
 
kokos4 :
누가 할 수 있는지 알려주세요. 열린 후 n(예: 5) 촛불로 거래를 마감하는 방법은 무엇입니까? 거래 개시 시간은 미리 알 수 없습니다.

주문이 시작된 후 경과한 양초의 수(미리 선택하는 것을 잊지 마십시오):

iBarShift ( _Symbol , _Period , OrderOpenTime());

더 쉬운 "찐 순무". ;)

[Deleted]  

동료 여러분, NormalizeDouble 기능 이 작동하지 않습니다(그렇지 않으면 설명할 수 없음). 두 번째 매개변수에 5를 썼지만 16자리를 표시합니다. 코드에서 잘못된 점을 알려주세요.

 double i = 0.123456789112345 ;
void OnStart ()
  {
         NormalizeDouble (i, 5 );  
         Alert (i);
  }
 
JoinDoe : 동료 여러분, NormalizeDouble 기능은 저에게 작동하지 않습니다(그렇지 않으면 설명할 수 없습니다).
 double i = 0.123456789112345 ;
void OnStart ()
  {
         Alert ( NormalizeDouble (i, 5 ));
  }
[Deleted]  
TarasBY :
고맙습니다! 이제 0.1234 6 을 제공합니다.
 
JoinDoe :
고맙습니다! 이제 0.1234 6 을 제공합니다.
맞습니다. 가장 가까운 곳에서 반올림합니다!
[Deleted]  
반올림 없이 어떻게 하시겠습니까?
 
JoinDoe :
반올림 없이 어떻게 하시겠습니까?

그러면 정규화되지 않고 오류가 발생할 수 있습니다! 그리고 더 정확한 정규화 가격에 만족하지 못하는 이유는 무엇입니까?

어떤 이유로 필요한 경우 원래 숫자에 100000을 곱하여 정수로 변환한 다음 _Point 또는 0.00001을 곱할 수 있습니다.

 double i = 0.123456789112345 ;
void OnStart ()
  {
         Alert ( NormalizeDouble (i* 100000 , 0 )*_ Point );
  }