소품 거래 - 사기 또는 어떤 의미가 있습니까? - 페이지 13 1...6789101112131415161718 새 코멘트 prostotrader 2019.07.16 22:55 #121 오늘날 Sberbank에 따르면 위험 은 거의 없지만 스프레드 가 증가 하는 고전적인 상황이 발생했습니다. 18-30에서 SPOT은 234.75에서 멈췄습니다. 선물은 23800으로 "점프"했고 나는 23775에서 5개의 선물을 팔았습니다. 그리고 SPOT이 2.75 루블까지 뛰지 않을 것이라고 믿으면서 내일 234.75 이하(슈퍼 상황)에서 SPOT을 구매할 것으로 예상합니다. (안좋은 상황) 모든 것이 정상이면 더 이상 연간 7-8%가 아니라 23-25%입니다. 이러한 조치 는 이미 구매한 스프레드에 대해 충분히 큰 볼륨(구매한 스프레드에 비해)이 있는 경우 취해질 수 있습니다. (저는 처음에 연 8%의 스프레드를 구매하여 이미 긍정적인 핸디캡을 만들었습니다) 추가됨 "Div Hunter"는 배당금을 잡기위한 것임을 잊지 마십시오. 따라서 배당금도 이익에 추가 될 수 있습니다 (떨어지는 경우 :)), 그러나 그물은 크다 추가됨 글쎄, "꼬리가 개를 지배하지 않는다"는 말처럼 Sberbank 50랏(500주)을 234.25루블로 구매했습니다. [아카이브]돈 버는 법을 배워라![아카이브] [아카이브!] FOREX - 동향, 트레이딩의 머신러닝: 이론, 모델, Aleksey Vyazmikin 2019.07.17 00:50 #122 prostotrader : 모든 것이 정상이면 더 이상 연간 7-8%가 아니라 23-25%입니다. 흥미롭네요. 저녁에 선물을 샀습니까? 처음 1시간은 RTS에서 반등할 수 있고 따라서 절약할 수 있음을 인정합니다. 그리고 아마도 전 세계적인 하락세는 계속될 것입니다. 토냐는 사지 않고 팔았다 :) prostotrader 2019.07.17 03:12 #123 아이디어와 계산을 계속 발표하는 것은 의미 가없는 것 같습니다 ... Aleksey Vyazmikin 2019.07.17 07:44 #124 prostotrader : 아이디어와 계산을 계속 발표하는 것은 의미 가없는 것 같습니다 ... 왜 그런 비관주의가? prostotrader 2019.07.17 09:49 #125 diman1982 용 델타 - 선물과 현물 간의 순 루블 차이 개인 지표 Aleksey Vyazmikin 2019.07.17 09:54 #126 prostotrader : diman1982 용 델타 - 선물과 현물 간의 순 루블 차이 개인 지표 엘리트 전용인가요 아니면 줄을 서도 되나요? 가능하다면 나는 극단적입니다 :) prostotrader 2019.07.17 10:10 #127 Aleksey Vyazmikin : 엘리트 전용인가요 아니면 줄을 서도 되나요? 가능하다면 나는 극단적입니다 :) "return (0);"대신 수식을 직접 대체하십시오. //+------------------------------------------------------------------+ //| 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 = 40 ; //Мин. Баров на графике //--- 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" ); //--- return ( INIT_SUCCEEDED ); } //+------------------------------------------------------------------+ // Custom indicator DeInit function | //+------------------------------------------------------------------+ void OnDeinit ( const int reason) { ObjectDelete ( ChartID (), "SPOTvsFUT_1" ); ObjectDelete ( ChartID (), "SPOTvsFUT_2" ); ObjectDelete ( ChartID (), "SPOTvsFUT_3" ); 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), 2 )); ChartRedraw ( ChartID ()); //--- return value of prev_calculated for next call event_cnt = rates_total; return (rates_total); } //+------------------------------------------------------------------+ Aleksey Vyazmikin 2019.07.17 10:24 #128 prostotrader : "return (0);"대신 수식을 직접 대체하십시오. 감사합니다. 하지만 어떤 공식에 대해 이야기하고 있습니까? 기능에 있는 것들 중에서 선택하거나 무엇을 선택합니까? 연간 수익률 공식도 안보이고... prostotrader 2019.07.17 10:36 #129 Aleksey Vyazmikin : 감사합니다. 하지만 어떤 공식에 대해 이야기하고 있습니까? 기능에 있는 것들 중에서 선택하거나 무엇을 선택합니까? 연간 수익률 공식도 안보이고... 즉, 스스로 일하고 생각하고 싶지 않습니까? Aleksey Vyazmikin 2019.07.17 11:03 #130 prostotrader : 즉, 스스로 일하고 생각하고 싶지 않습니까? 나는 당신이 지표에서 이미 이 문제를 해결했다고 생각했습니다. 1...6789101112131415161718 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
오늘날 Sberbank에 따르면 위험 은 거의 없지만 스프레드 가 증가 하는 고전적인 상황이 발생했습니다.
18-30에서 SPOT은 234.75에서 멈췄습니다.
선물은 23800으로 "점프"했고 나는 23775에서 5개의 선물을 팔았습니다.
그리고 SPOT이 2.75 루블까지 뛰지 않을 것이라고 믿으면서 내일 234.75 이하(슈퍼 상황)에서 SPOT을 구매할 것으로 예상합니다. (안좋은 상황)
모든 것이 정상이면 더 이상 연간 7-8%가 아니라 23-25%입니다.
이러한 조치 는 이미 구매한 스프레드에 대해 충분히 큰 볼륨(구매한 스프레드에 비해)이 있는 경우 취해질 수 있습니다.
(저는 처음에 연 8%의 스프레드를 구매하여 이미 긍정적인 핸디캡을 만들었습니다)
추가됨
"Div Hunter"는 배당금을 잡기위한 것임을 잊지 마십시오.
따라서 배당금도 이익에 추가 될 수 있습니다 (떨어지는 경우 :)),
그러나 그물은 크다
추가됨
글쎄, "꼬리가 개를 지배하지 않는다"는 말처럼
Sberbank 50랏(500주)을 234.25루블로 구매했습니다.
모든 것이 정상이면 더 이상 연간 7-8%가 아니라 23-25%입니다.
흥미롭네요. 저녁에 선물을 샀습니까? 처음 1시간은 RTS에서 반등할 수 있고 따라서 절약할 수 있음을 인정합니다.
그리고 아마도 전 세계적인 하락세는 계속될 것입니다.
토냐는 사지 않고 팔았다 :)
아이디어와 계산을 계속 발표하는 것은 의미 가없는 것 같습니다 ...
아이디어와 계산을 계속 발표하는 것은 의미 가없는 것 같습니다 ...
왜 그런 비관주의가?
diman1982 용
델타 - 선물과 현물 간의 순 루블 차이
개인 지표
diman1982 용
델타 - 선물과 현물 간의 순 루블 차이
개인 지표
엘리트 전용인가요 아니면 줄을 서도 되나요? 가능하다면 나는 극단적입니다 :)
엘리트 전용인가요 아니면 줄을 서도 되나요? 가능하다면 나는 극단적입니다 :)
"return (0);"대신 수식을 직접 대체하십시오.
"return (0);"대신 수식을 직접 대체하십시오.
감사합니다. 하지만 어떤 공식에 대해 이야기하고 있습니까? 기능에 있는 것들 중에서 선택하거나 무엇을 선택합니까? 연간 수익률 공식도 안보이고...
감사합니다. 하지만 어떤 공식에 대해 이야기하고 있습니까? 기능에 있는 것들 중에서 선택하거나 무엇을 선택합니까? 연간 수익률 공식도 안보이고...
즉, 스스로 일하고 생각하고 싶지 않습니까?
즉, 스스로 일하고 생각하고 싶지 않습니까?
나는 당신이 지표에서 이미 이 문제를 해결했다고 생각했습니다.