diff --git a/troposphere/cloudwatch.py b/troposphere/cloudwatch.py
index <HASH>..<HASH> 100644
--- a/troposphere/cloudwatch.py
+++ b/troposphere/cloudwatch.py
@@ -108,3 +108,29 @@ class Dashboard(AWSObject):
         if name in self.properties:
             dashboard_body = self.properties.get(name)
             self.properties[name] = json_checker(dashboard_body)
+
+
+class Range(AWSProperty):
+    props = {
+        'EndTime': (basestring, True),
+        'StartTime': (basestring, True),
+    }
+
+
+class Configuration(AWSProperty):
+    props = {
+        'ExcludedTimeRanges': ([Range], False),
+        'MetricTimeZone': (basestring, False),
+    }
+
+
+class AnomalyDetector(AWSObject):
+    resource_type = "AWS::CloudWatch::AnomalyDetector"
+
+    props = {
+        'Configuration': (Configuration, False),
+        'Dimensions': ([MetricDimension], False),
+        'MetricName': (basestring, True),
+        'Namespace': (basestring, True),
+        'Stat': (basestring, True)
+    }
Add Cloudwatch AnomalyDetector resource (#<I>)