소품 거래 - 사기 또는 어떤 의미가 있습니까? - 페이지 14 1...789101112131415161718 새 코멘트 prostotrader 2019.07.17 11:14 #131 Aleksey Vyazmikin : 나는 당신이 지표에서 이미 이 문제를 해결했다고 생각했습니다. 아니, 두뇌가 충분하지 않습니다 ... Aleksey Vyazmikin 2019.07.17 14:35 #132 prostotrader : 아니, 두뇌가 충분하지 않습니다 ... 이 수동적 침략이 무엇과 연결되어 있는지는 분명하지 않습니다 ... prostotrader 2019.07.17 20:16 #133 재구매를 모니터링 할 수 있도록 마지막 현물 가격을 추가했습니다. //+------------------------------------------------------------------+ //| SPOTvsFUT.mq5 | //| Copyright 2019, prostotrader | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2019, prostotrader" #property link "https://www.mql5.com" #property version "1.00" #property indicator_separate_window #property indicator_buffers 2 #property indicator_plots 2 //--- plot Label1 #property indicator_label1 "Input %" #property indicator_type1 DRAW_LINE #property indicator_color1 clrLime #property indicator_style1 STYLE_SOLID #property indicator_width1 1 //--- plot Label2 #property indicator_label2 "Output %" #property indicator_type2 DRAW_LINE #property indicator_color2 clrAqua #property indicator_style2 STYLE_SOLID #property indicator_width2 1 //--- #define on_call - 111 #define YEAR 365 //--- input double StCB = 7.5 ; //Ставка ЦБ(%) input double BBSpot = 0.025 ; //Брокер и Биржа СПОТ(%) input double BrFut = 0.24 ; //Брокер ФОРТС(руб.) input double BiFut = 0.0066 ; //Биржа ФОРТС(%) input double BrExp = 1.0 ; //Брокер за эксп.(руб.) input double BiExp = 2.0 ; //Биржа за зксп.(руб.) input double Div = 0 ; //Дивиденты(руб./акция) input double NalogDiv = 13 ; //Налог на дивиденты(%) input double NalDepo = 175 ; //Комиссия депозитария (руб./мес.) input long NFut = 100 ; //Передп. кол-во фьючерсов к продаже input int aBars = 30 ; //Мин. Баров на графике input double pSpot = 100 ; //Цена СПОТ для вечернего мониторинга //--- struct MARKET_DATA { int exp_day; double spot_ask; double spot_bid; double fut_ask; double fut_bid; double fut_lot; double go_sell; double go_buy; }; //--- string spot_symbol; int event_cnt; MARKET_DATA ma_data; double inBuff[], outBuff[]; bool spot_book, fut_book; //+------------------------------------------------------------------+ //| Custom indicator Get Spot name function | //+------------------------------------------------------------------+ string GetSpot( const string fut_name) { string Spot = "" ; if (fut_name != "" ) { int str_tire = StringFind (fut_name, "-" ); if (str_tire > 0 ) { Spot = StringSubstr (fut_name, 0 , str_tire); if (Spot == "GAZR" ) Spot = "GAZP" ; else if (Spot == "SBRF" ) Spot = "SBER" ; else if (Spot == "SBPR" ) Spot = "SBERP" ; else if (Spot == "TRNF" ) Spot = "TRNFP" ; else if (Spot == "NOTK" ) Spot = "NVTK" ; else if (Spot == "MTSI" ) Spot = "MTSS" ; else if (Spot == "GMKR" ) Spot = "GMKN" ; else if (Spot == "SNGR" ) Spot = "SNGS" ; else if (Spot == "Eu" ) Spot = "EURRUB_TOD" ; else if (Spot == "Si" ) Spot = "USDRUB_TOD" ; else if (Spot == "SNGP" ) Spot = "SNGSP" ; } } return (Spot); } //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int OnInit () { int t_bars = Bars ( Symbol (), PERIOD_CURRENT ); if (t_bars < (aBars + 2 )) { Alert ( "Не хватает баров на графике!" ); return ( INIT_FAILED ); } event_cnt = 0 ; //--- spot_symbol = GetSpot( Symbol ()); if (spot_symbol == "" ) { Alert ( "Не получено имя СПОТа!" ); return ( INIT_FAILED ); } else { if ( SymbolSelect (spot_symbol, true ) == false ) { Alert ( "Нет смвола с именем " + spot_symbol + "!" ); return ( INIT_FAILED ); } else { spot_book = MarketBookAdd (spot_symbol); if (spot_book == false ) { Alert ( "Не добавлен стакан СПОТа!" ); return ( INIT_FAILED ); } } } fut_book = MarketBookAdd ( Symbol ()); if (spot_book == false ) { Alert ( "Не добавлен стакан фьючерса!" ); return ( INIT_FAILED ); } IndicatorSetInteger ( INDICATOR_DIGITS , 2 ); IndicatorSetString ( INDICATOR_SHORTNAME , "SPOTvsFUT" ); //--- SetIndexBuffer ( 0 , inBuff, INDICATOR_DATA ); PlotIndexSetDouble ( 0 , PLOT_EMPTY_VALUE , EMPTY_VALUE ); ArraySetAsSeries (inBuff, true ); SetIndexBuffer ( 1 , outBuff, INDICATOR_DATA ); PlotIndexSetDouble ( 1 , PLOT_EMPTY_VALUE , EMPTY_VALUE ); ArraySetAsSeries (outBuff, true ); int window= ChartWindowFind ( ChartID (), "SPOTvsFUT" ); ObjectCreate ( ChartID (), "SPOTvsFUT_1" , OBJ_LABEL ,window, 0 , 0 ); ObjectSetInteger ( ChartID (), "SPOTvsFUT_1" , OBJPROP_YDISTANCE , 15 ); ObjectSetInteger ( ChartID (), "SPOTvsFUT_1" , OBJPROP_XDISTANCE , 5 ); ObjectSetInteger ( ChartID (), "SPOTvsFUT_1" , OBJPROP_COLOR , clrLime ); ObjectSetString ( ChartID (), "SPOTvsFUT_1" , OBJPROP_TEXT , "Input: 0" ); ObjectCreate ( ChartID (), "SPOTvsFUT_2" , OBJ_LABEL ,window, 0 , 0 ); ObjectSetInteger ( ChartID (), "SPOTvsFUT_2" , OBJPROP_YDISTANCE , 30 ); ObjectSetInteger ( ChartID (), "SPOTvsFUT_2" , OBJPROP_XDISTANCE , 5 ); ObjectSetInteger ( ChartID (), "SPOTvsFUT_2" , OBJPROP_COLOR , clrAqua ); ObjectSetString ( ChartID (), "SPOTvsFUT_2" , OBJPROP_TEXT , "Output: 0" ); ObjectCreate ( ChartID (), "SPOTvsFUT_3" , OBJ_LABEL ,window, 0 , 0 ); ObjectSetInteger ( ChartID (), "SPOTvsFUT_3" , OBJPROP_YDISTANCE , 45 ); ObjectSetInteger ( ChartID (), "SPOTvsFUT_3" , OBJPROP_XDISTANCE , 5 ); ObjectSetInteger ( ChartID (), "SPOTvsFUT_3" , OBJPROP_COLOR , clrWhite ); ObjectSetString ( ChartID (), "SPOTvsFUT_3" , OBJPROP_TEXT , "Delta: 0" ); ObjectCreate ( ChartID (), "SPOTvsFUT_4" , OBJ_LABEL ,window, 0 , 0 ); ObjectSetInteger ( ChartID (), "SPOTvsFUT_4" , OBJPROP_YDISTANCE , 60 ); ObjectSetInteger ( ChartID (), "SPOTvsFUT_4" , OBJPROP_XDISTANCE , 5 ); ObjectSetInteger ( ChartID (), "SPOTvsFUT_4" , OBJPROP_COLOR , clrWhite ); ObjectSetString ( ChartID (), "SPOTvsFUT_4" , OBJPROP_TEXT , "Night Delta: 0" ); //--- return ( INIT_SUCCEEDED ); } //+------------------------------------------------------------------+ // Custom indicator DeInit function | //+------------------------------------------------------------------+ void OnDeinit ( const int reason) { ObjectDelete ( ChartID (), "SPOTvsFUT_1" ); ObjectDelete ( ChartID (), "SPOTvsFUT_2" ); ObjectDelete ( ChartID (), "SPOTvsFUT_3" ); ObjectDelete ( ChartID (), "SPOTvsFUT_4" ); if (fut_book == true ) MarketBookRelease ( Symbol ()); if (spot_book == true ) MarketBookRelease (spot_symbol); if (reason == REASON_INITFAILED ) { Print ( "Индикатор удалён! Причина - ошибка инициализации." ); string short_name = ChartIndicatorName ( ChartID (), 1 , 0 ); ChartIndicatorDelete ( ChartID (), 1 , short_name); } } //+------------------------------------------------------------------+ //| Custom indicator Get expiration function | //+------------------------------------------------------------------+ int GetExpiration( const string aSymbol) { MqlDateTime ExpData, CurData; datetime expir_time = datetime ( SymbolInfoInteger (aSymbol, SYMBOL_EXPIRATION_TIME )); TimeToStruct (expir_time, ExpData); TimeTradeServer (CurData); if (ExpData.year != CurData.year) { return (YEAR * (ExpData.year - CurData.year) - CurData.day_of_year + ExpData.day_of_year); } else { return (ExpData.day_of_year - CurData.day_of_year); } } //+------------------------------------------------------------------+ // Custom indicator On book event function | //+------------------------------------------------------------------+ void OnBookEvent ( const string & symbol) { if ((symbol == Symbol ()) || (symbol == spot_symbol)) { ma_data.exp_day = GetExpiration( Symbol ()); ma_data.fut_ask = SymbolInfoDouble ( Symbol (), SYMBOL_ASK ); ma_data.fut_bid = SymbolInfoDouble ( Symbol (), SYMBOL_BID ); ma_data.fut_lot = SymbolInfoDouble ( Symbol (), SYMBOL_TRADE_CONTRACT_SIZE ); ma_data.go_sell = SymbolInfoDouble ( Symbol (), SYMBOL_MARGIN_INITIAL ); ma_data.go_buy = SymbolInfoDouble ( Symbol (), SYMBOL_MARGIN_MAINTENANCE ); ma_data.spot_ask = SymbolInfoDouble (spot_symbol, SYMBOL_ASK ); ma_data.spot_bid = SymbolInfoDouble (spot_symbol, SYMBOL_BID ); //--- double price[]; OnCalculate (event_cnt, event_cnt, on_call, price); } } //+------------------------------------------------------------------+ // Custom indicator Calc In Value function | //+------------------------------------------------------------------+ double CalcInValue() { double depocomiss = NalDepo/(NFut * ma_data.fut_lot); double comiss = ma_data.spot_ask * ma_data.fut_lot * BBSpot/ 100 * 2 + BrFut + BiFut * ma_data.fut_bid/ 100 + BrExp + BiExp; double divNalog = Div/ 100 * 13 ; double divWaite = 0 ; if (Div > 0 ) divWaite = ((Div - divNalog) * ma_data.fut_lot * 13 / 100 / 365 * 20 ); return ( 0 ); } //+------------------------------------------------------------------+ // Custom indicator Calc Out Value function | //+------------------------------------------------------------------+ double CalcOutValue() { double comiss = ma_data.spot_bid * ma_data.fut_lot * BBSpot/ 100 + BrFut + BiFut * ma_data.fut_ask/ 100 ; return ( 0 ); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int OnCalculate ( const int rates_total, const int prev_calculated, const int begin, const double &price[]) { if (prev_calculated == 0 ) { ArrayInitialize (inBuff, EMPTY_VALUE ); ArrayInitialize (outBuff, EMPTY_VALUE ); inBuff[ 1 ] = - 50 ; outBuff[ 1 ] = 50 ; } //--- if (begin == on_call) { for ( int i = aBars - 1 ; i > 0 ; i--) { inBuff[i] = inBuff[i - 1 ]; outBuff[i] = outBuff[i - 1 ]; } inBuff[ 0 ] = CalcInValue(); outBuff[ 0 ] = CalcOutValue(); } else { inBuff[ 0 ] = inBuff[ 1 ]; outBuff[ 0 ] = outBuff[ 1 ]; } inBuff[aBars] = EMPTY_VALUE ; outBuff[aBars] = EMPTY_VALUE ; ObjectSetString ( ChartID (), "SPOTvsFUT_1" , OBJPROP_TEXT , "Input: " + DoubleToString (inBuff[ 0 ], 2 )); ObjectSetString ( ChartID (), "SPOTvsFUT_2" , OBJPROP_TEXT , "Output: " + DoubleToString (outBuff[ 0 ], 2 )); ObjectSetString ( ChartID (), "SPOTvsFUT_3" , OBJPROP_TEXT , "Delta: " + DoubleToString (ma_data.fut_bid - (ma_data.spot_ask * ma_data.fut_lot), 0 )); ObjectSetString ( ChartID (), "SPOTvsFUT_4" , OBJPROP_TEXT , "Night Delta: " + DoubleToString (ma_data.fut_bid - (pSpot * ma_data.fut_lot), 0 )); ChartRedraw ( ChartID ()); //--- return value of prev_calculated for next call event_cnt = rates_total; return (rates_total); } //+------------------------------------------------------------------+ [삭제] 2019.07.18 08:55 #134 prostotrader : 오늘날 Sberbank에 따르면 위험 은 거의 없지만 스프레드를 늘리는 고전적인 상황이 있습니다. 내가 이해하는 한, 상황은 오늘날과 동일합니까? 저것들. 어제 젠장. 또한 그 자리가 저축에 폐쇄된 후 100+ 포인트가 올라갔습니다. 이제 어제 종가 영역에서 개장부터 주식을 살 수 있었는지 확인해보자. 추가됨: 예, 그럴 수 있습니다. [삭제] 2019.07.18 09:05 #135 시장이 열리기 전 한 잔 - 취한 것: Sergei Lebedev 2019.07.18 17:09 #136 주제의 주요 주제로 돌아가기: borsatrading은 Forex 스타일의 사기입니다. 사실, 그들은 어떤 자본도 제공하지 않고 MOEX 선물에서 포지션을 여는 데 필요한 GO의 20배 크기만 줄입니다(FAQ 섹션 ' 나에게 사용 가능한 자본의 양, 확인 방법' 참조) Aleksey Vyazmikin 2019.07.18 18:35 #137 Sergey Lebedev : 주제의 주요 주제로 돌아가기: borsatrading은 Forex 스타일의 사기입니다. 사실, 그들은 어떤 자본도 제공하지 않고 MOEX 선물에서 포지션을 여는 데 필요한 GO의 20배 크기만 줄입니다(FAQ 섹션 ' 나에게 사용 가능한 자본의 양, 확인 방법' 참조) "자본을 제공하지 않고 GO의 크기를 20x로 줄입니다"라고 작성하여 자신과 모순된다는 것을 이해합니까? 실제로, 그들은 거래 시 GO로 동결되는 대신 다른 도구에서 작동하도록 만들 수 있는 자금에 대한 부담을 줄입니다. Aleksey Vyazmikin 2019.07.18 18:59 #138 그건 그렇고, 아마도 Quek의 MT5에서 거래할 수 있기를 원하는 관심 있는 사람들이 있을 것입니다. 저는 이러한 목적을 위해 함께 거래 클래스를 주문하고 협력할 것을 제안합니다. 일반적으로 나는 이미 일자리를 얻었지만 아직 출연자를 선택할 필요가없고 돈을 많이 원하기 때문에 이것이 제안입니다. Yuriy Asaulenko 2019.07.18 20:49 #139 Aleksey Vyazmikin : 그건 그렇고, 아마도 Quek의 MT5에서 거래할 수 있기를 원하는 관심 있는 사람들이 있을 것입니다. 저는 이러한 목적을 위해 함께 거래 클래스를 주문하고 협력할 것을 제안합니다. 왜 그러한 어려움이 있습니까? Quek에서는 매우 잘 거래되었습니다. 원하시면 두피도 가능합니다. 그리고 자동차도 만들 수 있습니다. 상당히 민첩합니다. Yuriy Asaulenko 2019.07.18 20:50 #140 Aleksey Vyazmikin : 그건 그렇고, 아마도 Quek의 MT5에서 거래를 할 수 있기를 원하는 관심있는 사람들이있을 것입니다. 그러면 나는이 목적을 위해 함께 거래 클래스를 주문하고 협력 할 것을 제안합니다. 왜 그러한 어려움이 있습니까? Quek에서는 매우 잘 거래되었습니다. 원하시면 두피도 가능합니다. 그리고 자동차도 만들 수 있습니다. 상당히 민첩합니다. 1...789101112131415161718 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
나는 당신이 지표에서 이미 이 문제를 해결했다고 생각했습니다.
아니, 두뇌가 충분하지 않습니다 ...
아니, 두뇌가 충분하지 않습니다 ...
이 수동적 침략이 무엇과 연결되어 있는지는 분명하지 않습니다 ...
재구매를 모니터링 할 수 있도록 마지막 현물 가격을 추가했습니다.
오늘날 Sberbank에 따르면 위험 은 거의 없지만 스프레드를 늘리는 고전적인 상황이 있습니다.
내가 이해하는 한, 상황은 오늘날과 동일합니까? 저것들. 어제 젠장. 또한 그 자리가 저축에 폐쇄된 후 100+ 포인트가 올라갔습니다.
이제 어제 종가 영역에서 개장부터 주식을 살 수 있었는지 확인해보자.
추가됨:
예, 그럴 수 있습니다.
시장이 열리기 전 한 잔 - 취한 것:
주제의 주요 주제로 돌아가기: borsatrading은 Forex 스타일의 사기입니다.
"자본을 제공하지 않고 GO의 크기를 20x로 줄입니다"라고 작성하여 자신과 모순된다는 것을 이해합니까? 실제로, 그들은 거래 시 GO로 동결되는 대신 다른 도구에서 작동하도록 만들 수 있는 자금에 대한 부담을 줄입니다.
그건 그렇고, 아마도 Quek의 MT5에서 거래할 수 있기를 원하는 관심 있는 사람들이 있을 것입니다. 저는 이러한 목적을 위해 함께 거래 클래스를 주문하고 협력할 것을 제안합니다.
일반적으로 나는 이미 일자리를 얻었지만 아직 출연자를 선택할 필요가없고 돈을 많이 원하기 때문에 이것이 제안입니다.
그건 그렇고, 아마도 Quek의 MT5에서 거래할 수 있기를 원하는 관심 있는 사람들이 있을 것입니다. 저는 이러한 목적을 위해 함께 거래 클래스를 주문하고 협력할 것을 제안합니다.
그건 그렇고, 아마도 Quek의 MT5에서 거래를 할 수 있기를 원하는 관심있는 사람들이있을 것입니다. 그러면 나는이 목적을 위해 함께 거래 클래스를 주문하고 협력 할 것을 제안합니다.