FORTS 도와주세요 - 페이지 25

 
포럼에서 찾을 수 없습니다. 누군가 "FOK 응용 프로그램의 불완전한 일치" 문제를 해결하는 방법을 알려줄 수 있습니까?
 
anatolev :
포럼에서 찾을 수 없습니다. 누군가 "FOK 응용 프로그램의 불완전한 일치" 문제를 해결하는 방법을 알려줄 수 있습니까?

안녕하세요!

여기 있는 모든 사람들이 투시력이 있다고 생각합니까?

어떻게 제안할 수 있습니까? MT4 또는 MT5 터미널이 없으며,

주문을 제출할 때 사용하는 코드도 FORTS 또는 FOREX 시장도 아닙니다!

 
Mikalas :

안녕하세요!

여기 있는 모든 사람들이 투시력이 있다고 생각합니까?

어떻게 제안할 수 있습니까? MT4 또는 MT5 터미널이 없으며,

주문을 제출할 때 사용하는 코드도 FORTS 또는 FOREX 시장도 아닙니다!

요새 및 터미널 각각 마법사에 의해 생성된 5번째 EA 코드, 단순 평균


 
anatolev :

코드는 어디에 있습니까?

주문은 어떻게 보내나요?

P/S SRC 버튼을 누르면 코드가 삽입됩니다.

 
Mikalas :

코드는 어디에 있습니까?

주문은 어떻게 보내나요?

P/S SRC 버튼을 누르면 코드가 삽입됩니다.

 //+------------------------------------------------------------------+
//|                                                   CrossMA(3).mq5 |
//|                                                             stas |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "stas"
#property link        "http://www.mql5.com"
#property version    "1.00"
//+------------------------------------------------------------------+
//| Include                                                          |
//+------------------------------------------------------------------+
#include <Expert\Expert.mqh>
//--- available signals
#include <Expert\MyFirstSignal\Ma_Cross.mqh>
//--- available trailing
#include <Expert\Trailing\TrailingNone.mqh>
//--- available money management
#include <Expert\Money\MoneyFixedLot.mqh>
//+------------------------------------------------------------------+
//| Inputs                                                           |
//+------------------------------------------------------------------+
//--- inputs for expert
input string          Expert_Title             = "CrossMA(SI)" ; // Document name
ulong                 Expert_MagicNumber       = 13607 ;         // 
bool                  Expert_EveryTick         = false ;         // 
//--- inputs for main signal
input int             Signal_ThresholdOpen     = 11 ;           // Signal threshold value to open [0...100]
input int             Signal_ThresholdClose    = 10 ;           // Signal threshold value to close [0...100]
input double          Signal_PriceLevel        = 4.0 ;           // Price level to execute a deal
input double          Signal_StopLevel         = 300.0 ;         // Stop Loss level (in points)
input double          Signal_TakeLevel         = 1000.0 ;         // Take Profit level (in points)
input int             Signal_Expiration        = 4.0 ;             // Expiration of pending orders (in bars)
input int             Signal_MaCross_FastPeriod= 8 ;           // My_MA_Cross(13,MODE_SMA,21,...) Period of fast MA
input ENUM_MA_METHOD Signal_MaCross_FastMethod= MODE_SMA ;     // My_MA_Cross(13,MODE_SMA,21,...) Method of fast MA
input int             Signal_MaCross_SlowPeriod= 21 ;           // My_MA_Cross(13,MODE_SMA,21,...) Period of slow MA
input ENUM_MA_METHOD Signal_MaCross_SlowMethod= MODE_SMA ;     // My_MA_Cross(13,MODE_SMA,21,...) Method of slow MA
input double          Signal_MaCross_Weight    = 1.0 ;           // My_MA_Cross(13,MODE_SMA,21,...) Weight [0...1.0]
//--- inputs for money
input double          Money_FixLot_Percent     = 0.0 ;           // Percent
input double          Money_FixLot_Lots        = 1.0 ;           // Fixed volume
//+------------------------------------------------------------------+
//| Global expert object                                             |
//+------------------------------------------------------------------+
CExpert ExtExpert;
//+------------------------------------------------------------------+
//| Initialization function of the expert                            |
//+------------------------------------------------------------------+
int OnInit ()
  {
//--- Initializing expert
if (!ExtExpert.Init( Symbol (), Period (),Expert_EveryTick,Expert_MagicNumber))
     {
       //--- failed
       printf ( __FUNCTION__ + ": error initializing expert" );
      ExtExpert.Deinit();
       return ( INIT_FAILED );
     }
//--- Creating signal
   CExpertSignal *signal= new CExpertSignal;
   if (signal== NULL )
     {
       //--- failed
       printf ( __FUNCTION__ + ": error creating signal" );
      ExtExpert.Deinit();
       return ( INIT_FAILED );
     }
//---
   ExtExpert.InitSignal(signal);
   signal.ThresholdOpen(Signal_ThresholdOpen);
   signal.ThresholdClose(Signal_ThresholdClose);
   signal.PriceLevel(Signal_PriceLevel);
   signal.StopLevel(Signal_StopLevel);
   signal.TakeLevel(Signal_TakeLevel);
   signal.Expiration(Signal_Expiration);
//--- Creating filter MA_Cross
MA_Cross *filter0= new MA_Cross;
if (filter0== NULL )
  {
   //--- failed
   printf ( __FUNCTION__ + ": error creating filter0" );
   ExtExpert.Deinit();
   return ( INIT_FAILED );
  }
signal.AddFilter(filter0);
//--- Set filter parameters
filter0.FastPeriod(Signal_MaCross_FastPeriod);
filter0.FastMethod(Signal_MaCross_FastMethod);
filter0.SlowPeriod(Signal_MaCross_SlowPeriod);
filter0.SlowMethod(Signal_MaCross_SlowMethod);
filter0.Weight(Signal_MaCross_Weight);
//--- Creation of trailing object
  CTrailingNone *trailing= new CTrailingNone;
   if (trailing== NULL )
     {
       //--- failed
       printf ( __FUNCTION__ + ": error creating trailing" );
      ExtExpert.Deinit();
       return ( INIT_FAILED );
     }
//--- Add trailing to expert (will be deleted automatically))
   if (!ExtExpert.InitTrailing(trailing))
     {
       //--- failed
       printf ( __FUNCTION__ + ": error initializing trailing" );
      ExtExpert.Deinit();
       return ( INIT_FAILED );
     }
//--- Set trailing parameters
//--- Creation of money object
CMoneyFixedLot *money= new CMoneyFixedLot;
   if (money== NULL )
     {
       //--- failed
       printf ( __FUNCTION__ + ": error creating money" );
      ExtExpert.Deinit();
       return ( INIT_FAILED );
     }
//--- Add money to expert (will be deleted automatically))
   if (!ExtExpert.InitMoney(money))
     {
       //--- failed
       printf ( __FUNCTION__ + ": error initializing money" );
      ExtExpert.Deinit();
       return ( INIT_FAILED );
     }
//--- Set money parameters
money.Percent(Money_FixLot_Percent);
money.Lots(Money_FixLot_Lots);
//--- Check all trading objects parameters
   if (!ExtExpert.ValidationSettings())
     {
       //--- failed
      ExtExpert.Deinit();
       return ( INIT_FAILED );
     }
//--- Tuning of all necessary indicators
   if (!ExtExpert.InitIndicators())
     {
       //--- failed
       printf ( __FUNCTION__ + ": error initializing indicators" );
      ExtExpert.Deinit();
       return ( INIT_FAILED );
     }
//--- ok
   return ( INIT_SUCCEEDED );
  }
//+------------------------------------------------------------------+
//| Deinitialization function of the expert                          |
//+------------------------------------------------------------------+
void OnDeinit ( const int reason)
  {
   ExtExpert.Deinit();
  }
//+------------------------------------------------------------------+
//| "Tick" event handler function                                    |
//+------------------------------------------------------------------+
void OnTick ()
  {
   ExtExpert. OnTick ();
  }
//+------------------------------------------------------------------+
//| "Trade" event handler function                                   |
//+------------------------------------------------------------------+
void OnTrade ()
  {
   ExtExpert. OnTrade ();
  }
//+------------------------------------------------------------------+
//| "Timer" event handler function                                   |
//+------------------------------------------------------------------+
void OnTimer ()
  {
   ExtExpert. OnTimer ();
  }
//+------------------------------------------------------------------+
다음과 같은 코드가 있습니다.
 
문제, 즉, 테스트로 작업 시간을 단축한 것이 지금만이 아니라(더 자주 신호를 보낼 수 있음) 조건이 일치하면 작업 시간을 쏟아부었습니다.
 
anatolev :
문제, 즉, 테스트로 작업 시간을 단축한 것이 지금만이 아니라(더 자주 신호를 보낼 수 있음) 조건이 일치하면 작업 시간을 쏟아부었습니다.

만료에 문제가 있습니다.

 input int             Signal_Expiration        = 4.0 ;             // Expiration of pending orders (in bars)

BARS에는 만료가 있을 수 없으며 날짜/시간만 가능

 
Mikalas :

만료에 문제가 있습니다.

BARS에는 만료가 있을 수 없으며 날짜/시간만 있습니다.

이해했습니다 감사합니다! 그리고 이 경우에는 어떻게 됩니까? 아니면 이 행을 제외할 수 있습니까? 또는 그것은 0과 같게 설정할 수 있습니다. 이제 경험에 의해 :) 신호를 수신 한 후 두 번째 막대가 열릴 때 시장을 여는 것을 달성했습니다.
 input double          Signal_PriceLevel        = 0.0 ;           // Price level to execute a deal
0과 같기 전에 4였을 때 제한이 시장보다 4틱 더 좋게 설정되어 있었고 지금은 0을 설정한 후 시장에 따라 작동한다는 것을 올바르게 이해합니다.
 
anatolev :
이해했습니다 감사합니다! 그리고 이 경우에는 어떻게 됩니까? 아니면 이 행을 제외할 수 있습니까? 또는 아마도 0과 같게 설정하십시오. 이제 저는 경험적으로 :) 신호를 수신한 후 두 번째 막대가 열릴 때 시장과 함께 열리는 것을 달성했고, 0으로 설정했습니다. 그 전에는 4였습니다. 정확히 이해합니다. 4였을 때 한도는 시장보다 4틱 더 좋게 설정되었고, 지금은 0으로 설정하면 시장에서 작동합니다.

죄송합니다. 모든 표준 라이브러리는 FOREX 작업을 위해 "날카롭게" 되어 있습니다.

나와 다른 많은 사람들은 FORTS에서 작업하는 데 사용하지 않습니다.

불행히도 표준 라이브러리를 사용하는 데 도움을 드릴 수 없습니다.

 

MT를 사용하는 자동 거래에 대해 저보다 분명히 더 많이 알고 있기 때문에 한 번에 여러 질문에 답변할 수 있습니다.

1) 예시: 로봇 이 포지션을 오픈 하고 다음 거래일로 이동시켰습니다. 거래소는 밤에 닫으니까 밤에는 컴퓨터를 끄고 거래 시작 전 아침에 켜서 질문은 고문이 컴퓨터를 다시 시작한 후 이전에 열었던 거래를 볼 수 있는지 여부와 그에 따라 터미널 , 포지션, 반전, 후행 등으로 계속 작동할지 여부.

그렇다면 어떻게 MagicNumber를 통해 또는 어떻게 수행합니까?

2) 한 컴퓨터의 전문가가 거래를 시작한 다음 동일한 전문가와 함께 다른 컴퓨터가 출시된 것으로 판명되면 첫 번째 컴퓨터에서 시작한 작업을 계속할 것입니까 아니면 "처음부터" 거래를 시작할 것입니까?

사유: