차익 거래 전략의 생성 및 테스트 - 페이지 7

 
pronych :
자 그리고 나서. 이 다리로 지정가 주문을 할 때 그것에 대해 이야기하겠습니다.))
동의합니다. 제한 플레이어의 무리를 제어하기 어려울 것입니다))
 

압누 주제.

차익거래 포지션의 유동성을 결정할 때 발생한 문제.
USD 단위로 교차 쌍의 최상의 밴드에 대한 유동성을 올바르게 계산하는 방법(그리고 그 이유)은 무엇입니까?

1) 기준통화 의 메이저를 통해 직접
2) 견적통화별 메이저를 통해

예: EURCHF 베스트 밴드의 볼륨은 2백만 단위입니다. 이 볼륨을 USD로 평가해야 합니다. 무엇을 할까요? 우리는 즉시 EURUSD의 잔을 보고 2백만 유로가 얼마인지 알아냅니다. 아니면 현재 환율로 몇 프랑인지 먼저 추정한 다음 USDCHF에 대한 유리를 통해 USD로 거래량을 결정합니까?

 
GaryKa :

압누 주제.

차익거래 포지션의 유동성을 결정할 때 발생한 문제.
USD 단위로 교차 쌍의 최상의 밴드에 대한 유동성을 올바르게 계산하는 방법(그리고 그 이유)은 무엇입니까?

1) 기준통화 의 메이저를 통해 직접
2) 견적통화별 메이저를 통해

예: EURCHF 베스트 밴드의 볼륨은 2백만 단위입니다. 이 볼륨을 USD로 평가해야 합니다. 무엇을 할까요? 우리는 즉시 EURUSD의 잔을 보고 2백만 유로가 얼마인지 알아냅니다. 아니면 현재 환율로 얼마인지 먼저 추정한 다음 USDCHF에 대한 유리를 통해 USD로 거래량을 결정합니까?

그리고 틱 비용을 통해, 아니?
 

TickValue를 통해 솔루션을 보았습니다. 그러나 이 경우는 일반적이고(MT가 아님) 게다가 솔직히 말해서 TickValue를 사용한 조작으로 인해 머리가 깨질 것입니다. 기억하기 쉬운 간단한 설명을 원합니다.

이 같은 동안:

Ask gangs에서는 판매 제안이 있으므로 판매자로부터 상품( 기본 통화 )을 사용할 수 있습니다. 다른 견적 통화(USD)로 값을 다시 계산해 보겠습니다. 반대로 입찰 갱단에는 구매 제안이 있고 상품은 없지만 자금이 있습니다(견적 통화로). 해당 전공을 통해 이러한 자금을 다시 계산합니다.

총:

  • Ask gangs는 (1) 방법을 고려합니다
  • 입찰 갱은 (2) 방법을 고려
 
당신은 농담하고 있습니다 ... 또는 나는 당신의 생각을 이해하지 못했습니다. 예를 들어 EURUSD의 1랏 거래량이 다른 기호의 1랏 거래량과 같다고 생각하십니까?
 
GaryKa : ... 예를 들어 EURUSD의 1랏 거래량이 다른 기호의 1랏 거래량과 같다고 생각하십니까?

기본 통화 가 동일한 쌍의 경우 측정 단위가 동일하기 때문에 로트에 의한 비교가 허용됩니다. 예를 들어 EURCHF 및 EURUSD의 거래량.


파파클라스 :

EURUSD ASK 밴드 판매자만 = 200만, 즉 판매자는 2,000,000 / 100,000 = 20 유로를 매도하고 2,000,000 / 136345 = 14.67 USD를 구매하려고 합니다.

GBPUSD ASK 갱의 다른 판매자 = 350만, 즉 3,500,000/100,000 = 35 파운드 랏을 매도하고 3,500,000/ 164349 = 21.3 USD 랏을 사고 싶습니다.

결과적으로 우리는 그들이 유로와 파운드에 대해 14.67 + 21.3 = 35.97 USD 랏을 사고 싶어하는 순간을 갖게 되었습니다. 따라서 모든 통화를 계산할 수 있습니다.

이 예에는 견적 통화가 동일한 주요 쌍이 있습니다. 20유로 랏과 35파운드 로트를 비교하는 것은 허용되지 않습니다. 따라서 우리는 이미 비교할 수 있는 14.67 및 21.3 USD 랏으로 거래량을 변환하고 얻습니다.


질문이 조금 달랐나요? 교차 쌍의 거래량을 어떻게 계산합니까? 적어도 제비와 함께 표시하십시오. 예를 들어 EURCHF와 AUDNZD의 거래량을 비교하는 방법은 무엇입니까?

GaryKa : ... 크로스 페어의 최고 밴드에 대한 유동성을 USD 단위로 올바르게 계산하는 방법(그리고 그 이유)은 무엇입니까?
 

나는 또한 최대 허용 유동성을 거래하고 동시에 공통 단위로 변환하지 않기 위해 각 기호에 대한 로트를 계산하는 차익 거래 포지션에 대한 옵션을 찾았 습니다.

A/B, B/C, C/A와 같은 삼각형 차익거래가 있다고 합시다.

1) 첫 번째 문자부터 시작하여 마지막 문자까지. 우리는 첫 번째 쌍에서 볼륨 A를 취하고(A/B에 의한 주문 크기로 기억) 볼륨 B를 계산합니다(A에서 B로 변환). 받은 볼륨이 B/C보다 크면 2단계로 이동합니다. 작으면 이 볼륨을 기억하고(B/C에 의한 주문 크기로) C를 계산하고 비교합니다. ... 체인의 끝에 성공적으로 도달했습니다. -> 이미 주문량이 있습니다. 종료합니다.

2) 순환 시프트를 하고(A/B, B/C, C/A는 B/C, C/A, A/B가 되었다) 1번 포인트로 돌아간다)

 
papaklass : ... 포지션을 열 때 필요한 증거금으로 이러한 통화의 거래량을 표현합니다. 보증금은 보증금 통화로 계산됩니다. 따라서 USD의 제비를 통해 명명된 통화의 볼륨을 구하고 비교하십시오.
좋은 제안입니다.

다음과 같은 경우 예금 통화 USD로 어떤 마진이 제거될 것인지(제거해야 함) 독립적으로 계산해 보겠습니다.

- 우리는 EURCHF 1랏을 사고 싶습니다.
EURCHF를 사는 것은 CHF로 EUR를 사는 것입니다. CHF가 없습니다. 우리는 그것들을 빌리거나 스스로 획득합니다(1:1의 레버리지로). 즉, 우리는 USD(예금)를 가지고 있고 CHF를 사야 합니다(또는 CHF로 대출을 받은 경우 사지 않음). 그래야 나중에 EUR를 살 수 있습니다. 즉, EURCHF를 구매하려면 실제로(1:1 활용) USDCHF(예금에서 USD 달러 판매, CHF 구매) 및 시장(최악) 가격으로 판매해야 합니다.

- EURCHF 1랏을 판매하고자 합니다.
EURCHF를 판매하는 것은 EUR를 CHF에 판매하는 것입니다. 우리는 EUR가 없습니다(판매할 것이 없습니다). 우리는 그것들을 빌리거나 스스로 획득합니다(1:1의 레버리지로). 즉, 우리는 USD(예금)를 가지고 있고 EUR를 구매해야 합니다(또는 EUR로 대출을 받은 경우 구매하지 않음). 그래야 나중에 CHF를 구매할 수 있습니다. 즉, EURCHF를 매도하려면 실제로(1:1 활용) EURUSD를 가상으로 매수(예금에서 USD 달러 매도, EUR 매수)하고 시장(최악) 가격으로 매수해야 합니다.

총:
  • EURCHF를 구매할 때 대출에 대한 USD 담보는 USDCHF 가격을 사용하여 계산해야 합니다.
  • EURCHF를 판매할 때 대출에 대한 USD 담보는 EURUSD 가격을 사용하여 계산되어야 합니다.


이제 코드를 살펴보겠습니다. 제 생각에는 함수에 트랜잭션의 방향을 책임지는 인수가 부족합니다. 항상 기본 통화로 정의되는 변수 marginCurrency 가 있습니다. 따라서 항상 EURUSD를 통해 EURCHF를 판매 및 구매하는 데 대한 마진을 계산합니다.

   string marginCurrency = StringSubstr( StringTrimLeft( smb ), 0, 3 );

...


   if( calcCurrency == "" ){
      calcCurrency = GetSymbolByCurrencies( marginCurrency, accCurrency );
      mode = true;
     
      if( calcCurrency == "NULL" ){
         calcCurrency = GetSymbolByCurrencies( accCurrency, marginCurrency );
         mode = false;
      }
   }


추신: 귀하의 마진 계산이 이제 MT의 계산과 얼마나 일치하는지 궁금합니다. 이전에 이와 유사한 주장 이 이미 있었다는 것입니다.

 
papaklass :

침묵으로 판단하면 모든 것이 명확하지 않습니다.

"교차 쌍에 대한 거래량을 어떻게 계산합니까? 로트 유무에 관계없이 표시하십시오. 예를 들어 EURCHF 및 AUDNZD의 거래량을 비교하는 방법은 무엇입니까?"라는 질문에 숫자로 답하십시오.

제비의 차이를 알아보기 위해 주요 통화의 환율을 분자로 나눕니다. 담보 통화 - 분자의 통화.

EURUSD / AUDUSD -> 1.36368 / 0.90639 = 1.50451, 즉. AUDNZD에서 열린 포지션 의 거래량은 EURCHF보다 1.50배 커야 합니다 .

왜 전공을 공유합니까? ...

이 게시물을 이해하지 못했습니다. 즉, 이러한 방식으로 고려하면 AUDNZD(단위: USD)의 거래량이 EURCHF(단위: USD)의 거래량보다 약 1.5배 크다는 결론을 내립니다. 그래서?

 
papaklass : ... 이제 내 마진 코드입니다. 결국, 나는 그것에 대해 자세히 설명했습니다. 읽고 이해하는 것이 정말 어렵습니까? ... 마진은 다른 함수에 의해 계산됩니다 ... "//지정된 방향에 대한 현재 가격 가져오기" 주석 뒤의 코드를 보세요.

침착하게 papaclass , 그렇지 않으면 우리는 srach로 미끄러질 것입니다. 댓글을 작성하기 전에 코드를 살펴보았는데 제 댓글을 보셨나요? 주의 깊게?


귀하의 계산 방법에 대한 불만 사항(EURCHF 계산의 예) .

GaryKa : ... 항상 EURUSD를 사용하여 EURCHF를 판매하고 구매하는 데 대한 마진을 계산합니다.

"// 지정된 방향에 대한 현재 가격 을 얻으십시오"라는 주석 뒤에는 항상 매도할 때와 매수할 때 모두 있습니다. 동일한 기호로 가격을 계산하지만 다른 기호로 계산할 필요가 있다고 생각합니다(위의 정당성).

   prc = Dbl_If( dir == OP_BUY, MarketInfo( calcCurrency, MODE_ASK ),
                                MarketInfo( calcCurrency, MODE_BID ) );

EURCHF 예에서 calcCurrency 는 항상 EURUSD입니다.


PS 그것은 불필요했습니다, 죄송합니다

GaryKa : ... 제 생각에는 함수가 트랜잭션의 방향을 책임질 인수가 부족합니다 ...