What is MetaEditor? - Forex Robot Expert

My home-made bar replay for MT4

I made a home-made bar replay for MT4 as an alternative to the tradingview bar replay. You can change timeframes and use objects easily. It just uses vertical lines to block the future candles. Then it adjusts the vertical lines when you change zoom or time frames to keep the "future" bars hidden.
I am not a professional coder so this is not as robust as something like Soft4fx or Forex Tester. But for me it gets the job done and is very convenient. Maybe you will find some benefit from it.

Here are the steps to use it:
1) copy the text from the code block
2) go to MT4 terminal and open Meta Editor (click icon or press F4)
3) go to File -> New -> Expert Advisor
4) put in a title and click Next, Next, Finish
5) Delete all text from new file and paste in text from code block
6) go back to MT4
7) Bring up Navigator (Ctrl+N if it's not already up)
8) go to expert advisors section and find what you titled it
9) open up a chart of the symbol you want to test
10) add the EA to this chart
11) specify colors and start time in inputs then press OK
12) use "S" key on your keyboard to advance 1 bar of current time frame
13) use tool bar buttons to change zoom and time frames, do objects, etc.
14) don't turn on auto scroll. if you do by accident, press "S" to return to simulation time.
15) click "buy" and "sell" buttons (white text, top center) to generate entry, TP and SL lines to track your trade
16) to cancel or close a trade, press "close order" then click the white entry line
17) drag and drop TP/SL lines to modify RR
18) click "End" to delete all objects and remove simulation from chart
19) to change simulation time, click "End", then add the simulator EA to your chart with a new start time
20) When you click "End", your own objects will be deleted too, so make sure you are done with them
21) keep track of your own trade results manually
22) use Tools-> History center to download new data if you need it. the simulator won't work on time frames if you don't have historical data going back that far, but it will work on time frames that you have the data for. If you have data but its not appearing, you might also need to increase max bars in chart in Tools->Options->Charts.
23) don't look at status bar if you are moused over hidden candles, or to avoid this you can hide the status bar.


Here is the code block.
//+------------------------------------------------------------------+ //| Bar Replay V2.mq4 | //| Copyright 2020, MetaQuotes Software Corp. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2020, MetaQuotes Software Corp." #property link "https://www.mql5.com" #property version "1.00" #property strict #define VK_A 0x41 #define VK_S 0x53 #define VK_X 0x58 #define VK_Z 0x5A #define VK_V 0x56 #define VK_C 0x43 #define VK_W 0x57 #define VK_E 0x45 double balance; string balance_as_string; int filehandle; int trade_ticket = 1; string objectname; string entry_line_name; string tp_line_name; string sl_line_name; string one_R_line_name; double distance; double entry_price; double tp_price; double sl_price; double one_R; double TP_distance; double gain_in_R; string direction; bool balance_file_exist; double new_balance; double sl_distance; string trade_number; double risk; double reward; string RR_string; int is_tp_or_sl_line=0; int click_to_cancel=0; input color foreground_color = clrWhite; input color background_color = clrBlack; input color bear_candle_color = clrRed; input color bull_candle_color = clrSpringGreen; input color current_price_line_color = clrGray; input string start_time = "2020.10.27 12:00"; input int vertical_margin = 100; //+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ int OnInit() { Comment(""); ChartNavigate(0,CHART_BEGIN,0); BlankChart(); ChartSetInteger(0,CHART_SHIFT,true); ChartSetInteger(0,CHART_FOREGROUND,false); ChartSetInteger(0,CHART_AUTOSCROLL,false); ChartSetInteger(0,CHART_SCALEFIX,false); ChartSetInteger(0,CHART_SHOW_OBJECT_DESCR,true); if (ObjectFind(0,"First OnInit")<0){ CreateStorageHLine("First OnInit",1);} if (ObjectFind(0,"Simulation Time")<0){ CreateTestVLine("Simulation Time",StringToTime(start_time));} string vlinename; for (int i=0; i<=1000000; i++){ vlinename="VLine"+IntegerToString(i); ObjectDelete(vlinename); } HideBars(SimulationBarTime(),0); //HideBar(SimulationBarTime()); UnBlankChart(); LabelCreate("New Buy Button","Buy",0,38,foreground_color); LabelCreate("New Sell Button","Sell",0,41,foreground_color); LabelCreate("Cancel Order","Close Order",0,44,foreground_color); LabelCreate("Risk To Reward","RR",0,52,foreground_color); LabelCreate("End","End",0,35,foreground_color); ObjectMove(0,"First OnInit",0,0,0); //--- create timer EventSetTimer(60); return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| Expert deinitialization function | //+------------------------------------------------------------------+ void OnDeinit(const int reason) { //--- destroy timer EventKillTimer(); } //+------------------------------------------------------------------+ //| Expert tick function | //+------------------------------------------------------------------+ void OnTick() { //--- } //+------------------------------------------------------------------+ //| ChartEvent function | //+------------------------------------------------------------------+ void OnChartEvent(const int id, const long &lparam, const double &dparam, const string &sparam) { if (id==CHARTEVENT_CHART_CHANGE){ int chartscale = ChartGetInteger(0,CHART_SCALE,0); int lastchartscale = ObjectGetDouble(0,"Last Chart Scale",OBJPROP_PRICE,0); if (chartscale!=lastchartscale){ int chartscale = ChartGetInteger(0,CHART_SCALE,0); ObjectMove(0,"Last Chart Scale",0,0,chartscale); OnInit(); }} if (id==CHARTEVENT_KEYDOWN){ if (lparam==VK_S){ IncreaseSimulationTime(); UnHideBar(SimulationPosition()); NavigateToSimulationPosition(); CreateHLine(0,"Current Price",Close[SimulationPosition()+1],current_price_line_color,1,0,true,false,false,"price"); SetChartMinMax(); }} if(id==CHARTEVENT_OBJECT_CLICK) { if(sparam=="New Sell Button") { distance = iATR(_Symbol,_Period,20,SimulationPosition()+1)/2; objectname = "Trade # "+IntegerToString(trade_ticket); CreateHLine(0,objectname,Close[SimulationPosition()+1],foreground_color,2,5,false,true,true,"Sell"); objectname = "TP for Trade # "+IntegerToString(trade_ticket); CreateHLine(0,objectname,Close[SimulationPosition()+1]-distance*2,clrAqua,2,5,false,true,true,"TP"); objectname = "SL for Trade # "+IntegerToString(trade_ticket); CreateHLine(0,objectname,Close[SimulationPosition()+1]+distance,clrRed,2,5,false,true,true,"SL"); trade_ticket+=1; } } if(id==CHARTEVENT_OBJECT_CLICK) { if(sparam=="New Buy Button") { distance = iATR(_Symbol,_Period,20,SimulationPosition()+1)/2; objectname = "Trade # "+IntegerToString(trade_ticket); CreateHLine(0,objectname,Close[SimulationPosition()+1],foreground_color,2,5,false,true,true,"Buy"); objectname = "TP for Trade # "+IntegerToString(trade_ticket); CreateHLine(0,objectname,Close[SimulationPosition()+1]+distance*2,clrAqua,2,5,false,true,true,"TP"); objectname = "SL for Trade # "+IntegerToString(trade_ticket); CreateHLine(0,objectname,Close[SimulationPosition()+1]-distance,clrRed,2,5,false,true,true,"SL"); trade_ticket+=1; } } if(id==CHARTEVENT_OBJECT_DRAG) { if(StringFind(sparam,"TP",0)==0) { is_tp_or_sl_line=1; } if(StringFind(sparam,"SL",0)==0) { is_tp_or_sl_line=1; } Comment(is_tp_or_sl_line); if(is_tp_or_sl_line==1) { trade_number = StringSubstr(sparam,7,9); entry_line_name = trade_number; tp_line_name = "TP for "+entry_line_name; sl_line_name = "SL for "+entry_line_name; entry_price = ObjectGetDouble(0,entry_line_name,OBJPROP_PRICE,0); tp_price = ObjectGetDouble(0,tp_line_name,OBJPROP_PRICE,0); sl_price = ObjectGetDouble(0,sl_line_name,OBJPROP_PRICE,0); sl_distance = MathAbs(entry_price-sl_price); TP_distance = MathAbs(entry_price-tp_price); reward = TP_distance/sl_distance; RR_string = "RR = 1 : "+DoubleToString(reward,2); ObjectSetString(0,"Risk To Reward",OBJPROP_TEXT,RR_string); is_tp_or_sl_line=0; } } if(id==CHARTEVENT_OBJECT_CLICK) { if(sparam=="Cancel Order") { click_to_cancel=1; Comment("please click the entry line of the order you wish to cancel."); } } if(id==CHARTEVENT_OBJECT_CLICK) { if(sparam!="Cancel Order") { if(click_to_cancel==1) { if(ObjectGetInteger(0,sparam,OBJPROP_TYPE,0)==OBJ_HLINE) { entry_line_name = sparam; tp_line_name = "TP for "+sparam; sl_line_name = "SL for "+sparam; ObjectDelete(0,entry_line_name); ObjectDelete(0,tp_line_name); ObjectDelete(0,sl_line_name); click_to_cancel=0; ObjectSetString(0,"Risk To Reward",OBJPROP_TEXT,"RR"); } } } } if (id==CHARTEVENT_OBJECT_CLICK){ if (sparam=="End"){ ObjectsDeleteAll(0,-1,-1); ExpertRemove(); }} } //+------------------------------------------------------------------+ void CreateStorageHLine(string name, double value){ ObjectDelete(name); ObjectCreate(0,name,OBJ_HLINE,0,0,value); ObjectSetInteger(0,name,OBJPROP_SELECTED,false); ObjectSetInteger(0,name,OBJPROP_SELECTABLE,false); ObjectSetInteger(0,name,OBJPROP_COLOR,clrNONE); ObjectSetInteger(0,name,OBJPROP_BACK,true); ObjectSetInteger(0,name,OBJPROP_ZORDER,0); } void CreateTestHLine(string name, double value){ ObjectDelete(name); ObjectCreate(0,name,OBJ_HLINE,0,0,value); ObjectSetInteger(0,name,OBJPROP_SELECTED,false); ObjectSetInteger(0,name,OBJPROP_SELECTABLE,false); ObjectSetInteger(0,name,OBJPROP_COLOR,clrWhite); ObjectSetInteger(0,name,OBJPROP_BACK,true); ObjectSetInteger(0,name,OBJPROP_ZORDER,0); } bool IsFirstOnInit(){ bool bbb=false; if (ObjectGetDouble(0,"First OnInit",OBJPROP_PRICE,0)==1){return true;} return bbb; } void CreateTestVLine(string name, datetime timevalue){ ObjectDelete(name); ObjectCreate(0,name,OBJ_VLINE,0,timevalue,0); ObjectSetInteger(0,name,OBJPROP_SELECTED,false); ObjectSetInteger(0,name,OBJPROP_SELECTABLE,false); ObjectSetInteger(0,name,OBJPROP_COLOR,clrNONE); ObjectSetInteger(0,name,OBJPROP_BACK,false); ObjectSetInteger(0,name,OBJPROP_ZORDER,3); } datetime SimulationTime(){ return ObjectGetInteger(0,"Simulation Time",OBJPROP_TIME,0); } int SimulationPosition(){ return iBarShift(_Symbol,_Period,SimulationTime(),false); } datetime SimulationBarTime(){ return Time[SimulationPosition()]; } void IncreaseSimulationTime(){ ObjectMove(0,"Simulation Time",0,Time[SimulationPosition()-1],0); } void NavigateToSimulationPosition(){ ChartNavigate(0,CHART_END,-1*SimulationPosition()+15); } void NotifyNotEnoughHistoricalData(){ BlankChart(); Comment("Sorry, but there is not enough historical data to load this time frame."+"\n"+ "Please load more historical data or use a higher time frame. Thank you :)");} void UnHideBar(int barindex){ ObjectDelete(0,"VLine"+IntegerToString(barindex+1)); } void BlankChart(){ ChartSetInteger(0,CHART_COLOR_FOREGROUND,clrNONE); ChartSetInteger(0,CHART_COLOR_CANDLE_BEAR,clrNONE); ChartSetInteger(0,CHART_COLOR_CANDLE_BULL,clrNONE); ChartSetInteger(0,CHART_COLOR_CHART_DOWN,clrNONE); ChartSetInteger(0,CHART_COLOR_CHART_UP,clrNONE); ChartSetInteger(0,CHART_COLOR_CHART_LINE,clrNONE); ChartSetInteger(0,CHART_COLOR_GRID,clrNONE); ChartSetInteger(0,CHART_COLOR_ASK,clrNONE); ChartSetInteger(0,CHART_COLOR_BID,clrNONE);} void UnBlankChart(){ ChartSetInteger(0,CHART_COLOR_FOREGROUND,foreground_color); ChartSetInteger(0,CHART_COLOR_CANDLE_BEAR,bear_candle_color); ChartSetInteger(0,CHART_COLOR_CANDLE_BULL,bull_candle_color); ChartSetInteger(0,CHART_COLOR_BACKGROUND,background_color); ChartSetInteger(0,CHART_COLOR_CHART_DOWN,foreground_color); ChartSetInteger(0,CHART_COLOR_CHART_UP,foreground_color); ChartSetInteger(0,CHART_COLOR_CHART_LINE,foreground_color); ChartSetInteger(0,CHART_COLOR_GRID,clrNONE); ChartSetInteger(0,CHART_COLOR_ASK,clrNONE); ChartSetInteger(0,CHART_COLOR_BID,clrNONE);} void HideBars(datetime starttime, int shift){ int startbarindex = iBarShift(_Symbol,_Period,starttime,false); ChartNavigate(0,CHART_BEGIN,0); if (Time[WindowFirstVisibleBar()]>SimulationTime()){NotifyNotEnoughHistoricalData();} if (Time[WindowFirstVisibleBar()]=0; i--){ vlinename="VLine"+IntegerToString(i); ObjectCreate(0,vlinename,OBJ_VLINE,0,Time[i],0); ObjectSetInteger(0,vlinename,OBJPROP_COLOR,background_color); ObjectSetInteger(0,vlinename,OBJPROP_BACK,false); ObjectSetInteger(0,vlinename,OBJPROP_WIDTH,vlinewidth); ObjectSetInteger(0,vlinename,OBJPROP_ZORDER,10); ObjectSetInteger(0,vlinename,OBJPROP_FILL,true); ObjectSetInteger(0,vlinename,OBJPROP_STYLE,STYLE_SOLID); ObjectSetInteger(0,vlinename,OBJPROP_SELECTED,false); ObjectSetInteger(0,vlinename,OBJPROP_SELECTABLE,false); } NavigateToSimulationPosition(); SetChartMinMax();} }//end of HideBars function void SetChartMinMax(){ int firstbar = WindowFirstVisibleBar(); int lastbar = SimulationPosition(); int lastbarwhenscrolled = WindowFirstVisibleBar()-WindowBarsPerChart(); if (lastbarwhenscrolled>lastbar){lastbar=lastbarwhenscrolled;} double highest = High[iHighest(_Symbol,_Period,MODE_HIGH,firstbar-lastbar,lastbar)]; double lowest = Low[iLowest(_Symbol,_Period,MODE_LOW,firstbar-lastbar,lastbar)]; ChartSetInteger(0,CHART_SCALEFIX,true); ChartSetDouble(0,CHART_FIXED_MAX,highest+vertical_margin*_Point); ChartSetDouble(0,CHART_FIXED_MIN,lowest-vertical_margin*_Point); } void LabelCreate(string labelname, string labeltext, int row, int column, color labelcolor){ int ylocation = row*18; int xlocation = column*10; ObjectCreate(0,labelname,OBJ_LABEL,0,0,0); ObjectSetString(0,labelname,OBJPROP_TEXT,labeltext); ObjectSetInteger(0,labelname,OBJPROP_COLOR,labelcolor); ObjectSetInteger(0,labelname,OBJPROP_FONTSIZE,10); ObjectSetInteger(0,labelname,OBJPROP_ZORDER,10); ObjectSetInteger(0,labelname,OBJPROP_BACK,false); ObjectSetInteger(0,labelname,OBJPROP_CORNER,CORNER_LEFT_UPPER); ObjectSetInteger(0,labelname,OBJPROP_ANCHOR,ANCHOR_LEFT_UPPER); ObjectSetInteger(0,labelname,OBJPROP_XDISTANCE,xlocation); ObjectSetInteger(0,labelname,OBJPROP_YDISTANCE,ylocation);} double GetHLinePrice(string name){ return ObjectGetDouble(0,name,OBJPROP_PRICE,0); } void CreateHLine(int chartid, string objectnamey, double objectprice, color linecolor, int width, int zorder, bool back, bool selected, bool selectable, string descriptionn) { ObjectDelete(chartid,objectnamey); ObjectCreate(chartid,objectnamey,OBJ_HLINE,0,0,objectprice); ObjectSetString(chartid,objectnamey,OBJPROP_TEXT,objectprice); ObjectSetInteger(chartid,objectnamey,OBJPROP_COLOR,linecolor); ObjectSetInteger(chartid,objectnamey,OBJPROP_WIDTH,width); ObjectSetInteger(chartid,objectnamey,OBJPROP_ZORDER,zorder); ObjectSetInteger(chartid,objectnamey,OBJPROP_BACK,back); ObjectSetInteger(chartid,objectnamey,OBJPROP_SELECTED,selected); ObjectSetInteger(chartid,objectnamey,OBJPROP_SELECTABLE,selectable); ObjectSetString(0,objectnamey,OBJPROP_TEXT,descriptionn); } //end of code 
submitted by Learning_2 to Forex [link] [comments]

Any Luck with Ninjascript?

Hey guys, A little about me - I've been writing algos on and off for about a year and a half now. I started with Quantopian way back using python to write stock algos, then realised I couldn't live trade with it, so that put me off that.
I then found MT4 and MetaEditor and the world of forex... I was immediately in love with the simplicity of the language (C#), but I ditched it because forex just felt impossible to code around with all the volatility and news based price action. (I'm sure there's exceptions to this - but does anyone have a similar experience with it?)
I finally landed on NinjaTrader and scalping futures, which is amazing and seems to fit way better.
I'm wondering if anyone has experiences with successful Ninjascript trading systems and what advice they have etc. I've written up a few, one with a 76% success rate over 50 days but I'm starting to see how commission and tax really can have an impact...I'd also like to know about the reliability of backtesting using the Strategy Analyser vs Market Replay...
Who's out there! :)
submitted by photoshoplad to algotrading [link] [comments]

I'm Having trouble running a bash file.

Hi Everyone,
So I trade forex for a living. Use a windows only program called Meta-trader which I run via wine.
Thing is I dont want to type the commands each time in the terminal. So I tried writing a bash script to launch the file quickly but it isn't working outside of the terminal.
This is what I did.
#!/bin/bash
wine /home/kieron/pepperstone/drive_c/"Program Files"/"Pepperstone MetaTrader 4"/terminal.exe
#!/bin/bash
Now This works perfectly fine when I run in inside of the terminal (./Metatrader.sh). The problem is it won't run If I click it outside of the terminal, even though I ran chmod on it to make it executable.
The problem is my mother also uses this program, and she doesn't understand commands and such things. So If I'm not around she can't start the program on her own. This is why I need the script to run when it's clicked on.
However clicking on it doesn't run it, instead it just opens up it the text editor (gedit).
Any suggestions? Thanks!
submitted by bitnil to linux4noobs [link] [comments]

First month in the forex market novice trader

First month in the forex market novice trader

https://preview.redd.it/fj33lyjgepc41.png?width=600&format=png&auto=webp&s=64c8907f65653e408b6f41bd377e9f4c566e17d8
Every newcomer who comes to the Forex currency market already knows that the main rule of trade is to buy cheaper and sell more expensive. But it’s difficult to immediately determine how high the sale price should be and what the purchase price is low enough. A trading strategy must be checked on history. This can be done manually, but the use of a trading robot or another adviser will be much faster and better. The editor of the MetaTrader trading platform allows you to assemble a robot from almost any strategy. But for this you will have to learn the MQL language or order an adviser to the programmer. For example, here https://nordman-algorithms.com/metatrader-programming/
The novice trader basically does not ask this question and having sorted out the charts a bit, having studied several simple strategies, he goes into the trade with his head. In pursuit of a fabulous amount, randomly opening and closing deals, loses the first deposit in a couple of weeks.
After a while, another month, he returns to recoup. Now his first goal is to recapture faster the loss. Opening a new deposit, he tries himself as a scalper, opens transactions on intuition and again merges the deposit. And again comes back - but already with the money borrowed.
This vicious circle can be avoided, you just need to follow simple rules and devote more time to your level of knowledge. A novice trader should first of all be concerned about how to survive in the first month in the market, and not fabulous wealth. When getting acquainted with the Forex market, you need to pay attention to maintaining your deposit, and not to increasing it.
And so, what rules do novice traders need to follow? First, you must have a strategy. This means you should have clear rules for entering and exiting the market and, ideally, rules for maintaining positions. Where to get the strategy? You will have to develop a strategy yourself, it is unlikely that any successful trader will share his best practices with you. You can take a strategy from any Forex-related website as the basis. In its original form, it is unlikely to be profitable, since no adequate trader will lay out a working strategy. But often the ideas inherent in free strategies can be used and by adding a few additional rules or filters the strategy becomes working.
In most cases, beginners trade manually, and this is correct, trading manually means you understand all the nuances of the market and trading faster. When trading manually, the work of the strategy is visible since it actually works. All its strengths and weaknesses are visible, this allows you to quickly adjust the rules and bring the strategy to perfection.
When trading manually, and in auto trading too, a psychological factor acts on the trader, which is very difficult to control. Two big problems:
  • This is the adoption of unprofitable transactions without the desire to repel them;
  • and accepting a series of profitable transactions without the desire to increase the frequency and volume of transactions.
Strict discipline and strict adherence to strategy and money management will allow us to avoid these problems. Before bidding, you must definitely assess the situation. A conservative attitude regarding the size of the trading lot should be established. This will help not only to avoid many traps, but also to stay in the market, increasing your deposit. Beginners are advised to conduct a trading session no more than 4 hours a day. It is this period of time that will help them how to enter the market, make transactions on it and exit without monetary losses.
The Forex currency market is not for everyone. Only those who really want to make money and strive for this, overcoming barriers, analyzing mistakes, improving, can achieve unprecedented heights and make a profit.
submitted by alex_fortran to u/alex_fortran [link] [comments]

【翻译Quora上一篇问答】中国是否正在面临一次银行危机(谈到房地产) by phoebeDD on 2016-10-04

Is China really facing a banking crisis? What are its origins?
(中国是否正在面对一次银行危机?其根源又是什么?)



According to a recent article titled China facing full-blown banking crisis, world's top financial watchdog war
ns published in the Telegraph:
(根据近期电讯文章报道:“世界顶级金融观察者发出警告:中国正在面临全面的银行危机”)
China has failed to curb excesses in its credit system and faces mounting risks of a full-blown banking crisis
(中国已对债务违约失去控制,他们正在面对随之而来的全面性银行危机)
(中国债务/GDP 占比图)


Financial Crises

International Economics

The Economy

China

Answer
Request
Follow187
Comment1
Share
Downvote


9 Answers
以下为回答部分:





Robin Daverman, Dealmaker
Written Sep 27


Ah, but maybe you want to look around a bit and see how China’s total debt is compared with other economies, like this?
(你可能想看看其他经济体与中国的债务情况相比是怎么样的,如下图)

(G10债务分布图)
If you put China’s data on this chart, it will be somewhere around Canada and New Zealand. Guess Which Country Has Debt Of Nearly 1000% Of GDP... Shocking, isn’t it?
如果你将中国的数据插入上图进行比较的话,中国的数据大约会在加拿大和新西兰之间。猜猜看哪个国家债务大约是自己GDP的10倍....(英国)非常震惊吧
UK has almost 1000% Debt-to-GDP ratio, compared with China’s < 300% Debt-to-GDP ratio, mostly because of that over-sized financial debt - at the end of the day, the government must stand behind it. On top of that, the UK has no resource to sell, hardly any industry left, going through a divorce with EU, and almost never ever meets her fiscal targets. And yet, UK, with its near 1000% debt-to-GDP ratio, is still viewed as the gold standard among safe havens. PRESENTING: The Rosetta Stone Of The Entire Sovereign Debt Crisis Why? Because UK issues debt in her own currency. And who prints the pound? The UK government.
英国的债务/GDP占比将近1000%而中国只是小于300%,其原因是其过于庞大的金融债务——政府最终将不得不为之站台。在此之上,英国没用可出售的资源,没有任何本国工业,正在脱离欧盟,而且英国基本上从来没有达成其财务目标。即使如此,英国仍然被某些传媒视为安全经济体的黄金标准。其原因就是英债都以英镑的方式结算。那么是谁印英镑的呢?英国政府。
Then you take a look at Japan, wow that’s 600%+ debt-to-GDP ratio! But - Japan’s debt is not only mostly internal, in Japanese Yen, but also with 0% or even negative interest. You can roll this kind of debt over practically forever. That’s why people have been yelling about Japanese debt for the last 20 years, and nothing happens.
然后你看看日本,将近600%的债务/GDP占比!但是,日本的债务几乎都是内部的,以日元的形式出售的债务,而且日本是0利率甚至是负利率。实际上这种债务你可以无限积累下去(经济常识:如果是负利率,政府只要保持债务不变,多出来的部分会自行消失)。这就是为啥人们对日债担心了20年但屁事没有发生。
Then you take a look at those economies that have blown up on debt:
Argentina: Government/Sovereign debt in USD, with jurisdiction in New York!Greece: Government/Sovereign debt in Euro, with jurisdiction in Brussels!Iceland: External financial debt → nationalized into Government/Sovereign debt in USD and Euro alone was 700%+ GDP in 2008, with jurisdiction in New York and Brussels.
然后你看看那些因债务问题毁掉的经济体:
阿根廷:政府/主权债务以美元形式结算,其裁判权在纽约!希腊:政府/主权债务以欧元方式结算,其裁判权在布鲁塞尔!冰岛:外部金融债务→债务国有化后2008年政府/主权债务以美元和欧元的形式达到GDP的700%,其裁判权在纽约和布鲁塞尔
Then you look at China, with her debt almost entirely internal, in Chinese RMB to Chinese citizens, government debt at 55%, lower than the US, Japan, and EU average, in her own currency. China’s external debt is about 9% of GDP, globally ranked 184th (less than North Korea, similar to Kosovo) - anyway you look at it, it’s hardly the kind of material to make a banking crisis. China is borrowing a little bit from her own piggy bank. Argentina/Greece/Iceland were borrowing a lot from the Mafia.
然后你看看中国,中国的债务基本都是内部以人民币结算的。中国政府债务只占总债务的55%,比美国,日本和欧盟都要低,再次强调,其债务以人民币结算。中国外部债务只占GDP的9%,全球排行184位(比朝鲜低,比科索沃高)。无论怎么看,你都不会看到中国有任何银行危机的迹象。中国只是向其国内贪心的银行借钱。阿根廷/希腊/冰岛可是像美国欧盟这些黑手党借钱。
PS: The most significant increase in China’s debt is in the financial sector, driven by rising real estate price (which means higher value of housing loans). Right now, the Chinese government is basically using it as a tool to do macro-economic engineering. The goal is to cap urban growth in top tier cities (Beijing, Shanghai, etc.) and push the economic growth to second- and third- tier cities (Hangzhou, the city that just hosted G20, is an example.http://www.g20.org/English/Hangzhou/About/index.html Now you can look back and see why the Chinese government decided to host G20 in a city nobody has ever heard of). This is clearly stated by the Chinese government like 100 times since last year in the official news channels. The reason? Top tier Chinese cities like Shanghai (25 million) already have more city residents than the whole nation of Australia! The metropolitan area of Shanghai (44 million) has more people than the entire population of Canada! In one city! Beijing’s population grew by 8 million within the last decade! The place is simply full.List of cities in China by population and built-up area
PS: 中国最显著的债务增长是在其金融领域内不断升高的房价造成的(不断增高的房贷造成债务问题)。现在中国政府正在利用房价作为宏观经济调控的工具。其目的是限制一线城市的城市化进程和加速二三线城市的发展(刚刚举办了G20的杭州就是个例子,现在你就能知道为啥中国政府将G20放在一个没人听说过的城市举行了)。这些政策中国政府已经在官媒上宣布了无数次。原因就是一线城市,例如上海(2500万人口),其居民数量比阿根廷全国人口还要多!上海都市圈(4400万人口)的人口数量比加拿大全国还要多!北京人口数量在过去的10年内增长了800万!这些城市的人口数量已经饱和了。
In addition to real estate prices, the Chinese government is also doing stuff like restricting residents permits, disallowing second or third homes, even restricting jobs to local residents, everything to say “this place is full. We have these other nice choices, with lower housing prices. Go there.” Young people complaining about housing prices in tier-one cities? But that’s the whole point. The debt you have to take on to live in tier-one cities SHOULD SCARE YOU OFF. The Chinese government is trying to stop the influx of people pouring into tier-one cities, and get these smart and energetic youths to go build two, three, four, five. … more Shanghai’s in other parts of China. 1.4 billion people can’t all fit into tier-one cities.
除了以房地产为手段,中国政府也加强控制了居住证的发放,禁止第二/三套房买入甚至对本地居民的工作种类进行限制,这些都是为了表达一个意思:这些地方都人满为患了。二三线城市有更低的房价和更好的生活条件,快点去那里吧!年轻人都在抱怨一线城市的高房价?但这就是中国政府想要的。你在一线城市生存需要的代价会把你吓退。中国政府正在尝试控制一线城市的人口流入而让有技术和充满活力的年轻人去建设二三四五线城市——让更多的上海出现在国家的其他地方。14亿人口是没可能全部都聚集在一线城市的。
5.9k Views · View Upvotes
Upvote91Downvote
Comments4+

Share





Paul Denlinger, Involved in China economics study
Written Sep 27


There is too much debt, and a lot of it is likely to turn into bad debt, but that does not equal a banking crisis.
是因为中国贷款太多了,而这些贷款大多数会变成不良贷款,但这些都不等银行危机
Banking crisis may be a nice term to bandy around and get clicks and headlines, but does not really explain what is going on.
银行危机或许是一个十分吸引眼球的头条,但是根本就不能解释实际的情况
There was a lot of debt financing, especially after the 2008 subprime mortgage crisis in the US. In order to keep the economy on a steady keel, the Chinese government, through its banks, pumped money to Chinese state-owned enterprises, in order to keep high employment and maintain an image of “growth”. A lot of this money then found its way into the underground banking system through “wealth management products” and other means. A lot of this has turned into bad debt.
中国政府有过很多次债务融资,特别是08年美国次贷危机之后。为了稳住经济增长,中国政府通过银行将大量人民币注入到国企内以维持就业率和高增长的形象。但这些钱最终大都以理财产品和其他形式流进了地下钱庄。这些大部分都变成了不良贷款。
Another problem area, which frequently overlaps with the “wealth management products” is the local government financing vehicle used to fund local property development, which I have discussed here: Paul Denlinger's answer to Why does China have so many ghost towns?
另一个有问题的领域,和“理财产品”有莫大关联的,就是地方政府为当地基础建设所采用的金融工具(我在这个地方有详细的分析:https://www.quora.com/Why-does-China-have-so-many-ghost-towns/answePaul-Denlinger?srid=tR&share=22b99cfc
What is likely to happen in China is that growth will slow down in some areas, while there will be certain newer parts of the economy which will continue to grow. If the Chinese government is able to support the newer parts of the economy and help them to grow, while cutting back on loans to the weaker parts of the economy, it may be able to handle this transition better.
最可能发生的情况就是中国的经济增长将会放缓,但是肯定会用新的增站点。如果中国政府能支持新的增长点而且能减低夕阳工业的不良贷款率,那么或许能更好地度过过渡期。
This is exactly what the Chinese government is trying to do and you can read about it here:Here is how China is going to quietly save its economy
这些正是中国政府正在尝试去做的,你可以读读这个文章了解一下:http://www.scmp.com/news/china/economy/article/2022491/china-deploys-policy-banks-stealth-mission-stimulate-growth
So, if you are expecting there to be a dramatic run on the banks, and the Chinese people to take to the streets and overthrow the Chinese Communist Party, and become a full-blown democracy like Taiwan, Japan or South Korea, you are very likely to be disappointed.
所以,如果你是期待一次强烈的bank run(自行百度啥是bank run),然后中国人民上街推翻TG,中国大陆变成与台湾,日本韩国一样的政体,那么你要失望了。
4.3k Views · View Upvotes
Upvote62Downvote
Comments2+

Share





Nikhil Ambhorkar, Self studied Finance.
Written Sep 26


Is China facing a Banking crisis?
中国是在面临一个银行危机吗?
Yes.

Is it facing a full blown Banking crisis?
中国正在面临一个全面性的银行危机吗?
No.

Combined debt of China is almost 300% of its GDP. But the the categorized in 4 parts as it is shown in the image with the question too.
中国的总债务大概是GDP的300%。但是分在了如图所示的4个领域内。
The corporate debt has the lion's portion of the total debt. The household debt and non corporate debt are nothing to worry about because it is less many other developed countries and has some room to grow.
公司债务在总债务中占了大头。个人债务和非公司债务根本没啥可担心的因为这些比大多数发达国家还要低所以还有增长的空间。
Government Debt is not too big when compared to standards set by many global institutions like IMF, World Bank, etc.
政府债务以多数国际组织,例如世行和IMF,设定得标准来看其实不高。
The only major concern which is of a serious magnitude is the corporate debt. This is also reiterated by many economists.
最主要的关注点就是公司债务了。许多经济学家都重申了这点无数次了。
Now the problem with China is that data that comes out of major Chinese institutions is murky so their are many different types of estimates by many different institutions but the common theme in it is corporate debt and its size.
中国最大的问题就是中国国内组织公布的数据来源不清晰所以不同的国际组织对中国经济的实际情况估算会不一样。但所有组织最关心的都是中国的公司债务与其规模。
Corporate debt consists of debt owned by state owned corporations and private corporations. Private corporations in China are generally crowded out by the state owned corporations because of connections and political agenda.
公司债务又分成了国企和私企的债务。中国私企大多数收到国企排挤,这是有政体造成的。
Many state owned corporations have invested into unproductive projects as a result of excess boost given by government after 2008 to prop up the economy. This has resulted in a huge amount of NPAs. So, in all the major problem is state owned corporations piling up huge amount of debt. To solve this problem, the government tried to convert the debt into shares which the bank owns and can recover money through profit dividends but this was one of the causes for last year's stock market crash.
在08年过度的经济刺激政策下,很多国企在许多无效益项目上投了许多钱。这造成了大量的无效能资产。所以,最大的问题是国企堆积了大量债务。为了解决这个问题,政府正在尝试将国企的债务转化为股份,那么银行就能将债务转化为红利而最终将债务收回了。但这造成了上年的股灾.....
Hence, it is a big crisis but not the one government cannot handle with so much trade surplus and forex reserves. But actions are definitely needed to stop it from growing into a bigger problem.
所以,这是一个危机但仍然是政府能控制的,毕竟中国政府有大量贸易顺差和外汇储备。但是仍然需要实际行动来防止事态的扩展。
906 Views · View Upvotes
Upvote18Downvote
Comments1+

Share



submitted by robot301_01 to kfq [link] [comments]

EA (Expert Advisers),What they are and why they are used in Forex

EA (Expert Advisers),What they are and why they are used in Forex


An expert adviser is simply a program which can execute any task it's instructed to do without any direct human involvement required.
They allow the user to automate the trading and analytical process on a given platform such as MT4.If trying to make an EA one needs to use an editor such as Meta Editor on the MT4 terminal. Then the user gives a set of instructions to the program to execute under certain conditions, it can be user to execute multiple trades in seconds or perform analytical process on any given feed/information given on the MT4 platform.
Why EAs are popular and used?
Quick to open positions and react to market volatility:
With so many instruments available to trade and so much analysis to do, humans can not make time for the analysis of the market and cannot open multiple positions to avail all the intraday opportunities in the market. While an EA can analyze a greater number of instruments to make truly a diverse portfolio and react to market volatility much faster.
EA strategies can be back tested:
The set of instructions or the strategy that you code in the EA can be back tested to ensure that it's delivering the results wanted by the developer.
No Emotions to hamper potential profits:
Emotions and psycology plays an important role when the trade goes the wrong way. One of the many benefits of an EA is that it has no emotions as compared to humans and can open close trades based on the parameters given and respond with risk management protocols if trades go wrong.
No rest needed :
Unlike humans the EA doesn't need to eat, sleep, drop kids to school or go to work etc. They start compiling the instruction set whenever the program/EA is executed. It can perform market analysis all the time without break and open trades when there are more potential opportunities in the market which the human trader might be missing because of his busy life.
However traders should be aware of the risks involved with using an EA. There are many good ones giving a substantial return over investment per anum but many of the ones which claim astronomical returns might turn out to be fraudulent. If these astronomical returns were that easy to get using EAs then all banks and hedge funds would just put their money with the EA and the world would be a much richer place :D
While checking for EAs to buy be sure to check their history , user reviews and back tested data before risking your investment. Remember many unethical brokers make fake historical trade data which these fraudulent EA developers market online and entice clients with huge returns.
For more News from the FX Markets visit our website.
We also have on demand webinars for clients who are interested in growing their knowledge in the FX sphere.
submitted by StrattonForex to u/StrattonForex [link] [comments]

Metatrader,Indicators ,Expert Advisors

Customized Strategies, EAs & Indicators For Professional MT4Traders MT4 HUB is here to help you maximize high probability trades and minimize losses. You will gain full access to customized indicators, EAs, and strategies that fit your personal trading goals and style. Why So Many Professional Traders Choose MT4 HUB: ☑ Established in 2010, with a long track record of helping professional traders maximize their returns ☑ We’ve worked with over 500+ traders, each with an average 5-7 million USD monthly trad- ing volume ☑ Dedicated Team of 27 people, including 7 expert developers in C++ and MT4 Editor ☑ We provide services for cryptocurrency traders in addition to Forex traders. If Your Average Monthly Trading Volume Is 1 - 25+ Million USD, We Can Automate Your Trading Strategy For More High-Probability Trades A personalized service built to match your exact trading needs. Your very own Expert Advisors, Indicators, and Strategies, optimized with machine learning. Increase your yearly returns, maximize potential profits, and minimize losses using MT4 HUB. The Team Behind MT4 HUB ☑ Established in 2010, with a long track record of helping professional traders maximize their returns ☑ We’ve worked with over 500+ traders, each with an average 5-7 million USD monthly trad- ing volume ☑ Dedicated Team of 27 people, including 7 expert developers in C++ and MT4 Editor ☑ We provide services for cryptocurrency traders in addition to Forex traders. ☑ We’re local. 100% Unique Strategies State-of-the-art machine learning Your favorite trading indicators & strategies… Super-Charged No one else will be using your exact trading strategy, as your EAs are all uniquely programmed to your parameters and AI optimization. You won’t need any mathematical knowledge or coding experience to take full advantage of custom-built strategies and EAs to execute them. Train, test, and optimize your strategies using Artificial Intelligence & machine learning, and watch as they reduce errors, minimize risk, and increase your returns. Zero Emotional Trades 24/5 Trading 8+ Years of Testing, Research & Development No more suffering losses due to fear, greed, or other emotions plaguing other traders. Once your custom EAs is ready, your strategy will be executed with zero emotional baggage or distractions. Tired? Sleeping? No problem! Your custom EAs will make trades with the same accuracy no matter what time of day (or night) it is! Your EAs will never get tired or miss out on high probability trades. Our customized EAs, Indicators & Strategies have been tested time and time again by hundreds of professional traders, and are made to work with all trading timeframes. More Ways You Benefit By Using MT4 HUB • You Can Select Your Maximum Risk - Your EAs will stop trading immediately if your account reaches your maximum risk level. Protect your downside and your capital during volatile market periods. • Catch High Probability Trades - All these tools are here to help you catch as many high probability trades as possible while minimizing your risk and exposure to the market. • Follow a Strict Trading System To The Letter - Your EAs will never make trades that fall outside of your pre-programmed parameters. • A Complete Understanding Of Market Movements - Customized Trading EAs, Indica- tors & Strategies combined with the analytical capabilities of MetaTrader 4 will help you un- derstand the current market movements more completely, making it easier to find & catch the highest probability trades. Frequently Asked Questions - Who Can Benefit From Using MT4 HUB? Any trader who’s looking to upgrade their trading strategy, and execute it perfectly 24/5. MT4 HUB allows you to super-charge your entire trading strategy with the power of AI, customized indicators & more. Your trades will no longer be affected by emotion, feeling tired, or even sleeping. Simply set up your automated system, and MT4 HUB will take care of the rest. We mainly deal with traders who have a monthly trade volume of 1 to 25+ million USD. - Will the Expert Advisors Work? While we cannot promise profits, you can always ‘paper trade’ using the Expert Advisor, and op- timize it until it consistently makes a profit before you put it on the live market. - Does MT4 HUB work for cryptocurrency traders? Yes! We give you full support along with the same incredible features even for the new cryptocur- rency markets. If you can trade it on MT4, we support it! Since these markets never close, you can have customized EAs doing your cryptocurrency trading 24/7 too!
submitted by tradebot321 to u/tradebot321 [link] [comments]

Forex Algorithmic Trading Course: Learn How to Code on ... How to Trade Forex Using MetaTrader 4 (MT4) Walkthrough ... MetaTrader4 - The Complete Guide to MT4 - YouTube How to draw technical analysis in MetaTrader 4 - YouTube How to Change or Select Language on your META 4 Forex ... How To Use MetaTrader 4 (Tutorial For Beginners - How To ... Tutorial 1 - MetaTrader 4 Tips and Tricks - YouTube How to install a Forex Robot in MetaTrader4 - YouTube

The Metatrader 4 forex trading platform combines a rich user interface with a highly customizable trading environment. It offers advanced trading capabilities and the ability to place advanced orders as well as trade from charts Specialized editor for creating trading robots and technical indicators The MQL4 programs are developed in the built-in MetaEditor. It is a convenient and versatile tool for developing Expert Advisors, custom indicators, scripts and libraries of any complexity which are then used in the platform. MetaTrader 4 is a platform for trading Forex, analyzing financial markets and using Expert Advisors. Mobile trading, Trading Signals and the Market are the integral parts of MetaTrader 4 that enhance your Forex trading experience. Millions of traders with a wide range of needs choose MetaTrader 4 to trade in the market. The platform offers ample of opportunities to traders of all skill levels ... Alternatively, you can launch the MetaEditor by clicking Tools >>> MetaQuotes Language Editor. New MQL 4 programs creation is aided by the Expert Advisors Wizard within the MetaEditor. You can also use templates to write an MQL 4 program. Having started to write the program, the user can find a full description of the language in the MQL 4 Dictionary. After the program has been written, it ... There are numerous Android powered smartphones and tablets, and any of them can be used to trade Forex via MetaTrader 4. Round-the-clock access to the market; Connection to 2 000+ broker servers; 30 technical indicators and 24 analytical objects; Full-featured trading system: 2 execution modes and 4 order types; Real-time symbol quotes; 3 chart types and 9 timeframes (periods) Download ... Thus, the code writing is greatly facilitated and sped up. With the help of the editor, you can promptly see the function signature, a quick insertion of resources, supports snippets, easy code navigation, and bookmarks. MQL5 storage and shared projects: Online source code storage MQL5 storage is featured by MetaEditor. With the storage, you can access your codes from any computer by using an ... MetaEditor is a freeware metadata editor software app filed under camera software and made available by kiwi software for Windows. The review for MetaEditor has not been completed yet, but it was tested by an editor here on a PC. If you would like to submit a review of this software download, we welcome your input and encourage you to submit us something! Edit hidden metadata stored in digital ...

[index] [12995] [13216] [17889] [28466] [16769] [18069] [29618] [13048] [18773] [10572]

Forex Algorithmic Trading Course: Learn How to Code on ...

Register for the full course here: https://rebrand.ly/ForexAlgo Follow me on Instagram: https://www.instagram.com/Mohsen_Hassan Join our Discord room here ht... At first the app may be a bit confusing so I did make this beginner friendly. This video I do a quick, easy, detailed walkthrough on how you can use the Meta... Comprehensive guide to all the features of MetaTrader 4. You can't trade Forex without knowing your platform. If you want to learn more and get an excellent ... How to Change or Select Language on your META 4 Forex trading platform A detailed video explaining how to download and how to use Metatrader 4 charting platform. In this video - 'How To Use Metatrader 4 Tutorial For Beginners' I... MetaTrader 4 is an extremely robust and efficient way to manage your investing. This video will demonstrate some of the platform features and will help you u... This guide is aimed at beginners who would like to know how to use Technical analysis in MetaTrader 4. Metatrader 4 is one of the most popular trading platfo... This educational video will show you how to install a forex robot to the MetaTrader4 platform step-by-step (by the example of our free SwissBot). Welcome to ...

http://binaryoptiontrade.cofflehoge.tk